將數字轉換成千分位表示
第一種方法是:使用reverse() 方法顛倒數組中元素的順序。
1 MillenniumRepresentation(value){ 2 var list = new String(value).split('').reverse(); 3 for(var i = 0; i < list.length; i++){ 4 if(i % 4 == 3){ 5 list.splice(i, 0, ','); 6 } 7 } 8 return list.reverse().join(''); 9 }
第二種方法是:
1 MillenniumRepresentation(value){ 2 var list = String(value).split('').reverse(); 3 var temp = []; 4 for(var i = 0, len = list.length; i < len; i = i + 3){ 5 temp.push(list.slice(i, i + 3).join('')); 6 } 7 return temp.join(',').split('').reverse().join(''); 8 }
第三種方法是:使用正則表達式,匹配/(?=(?!)(\d{3})+$)/g數字后面是三個數字或者3的倍數個數字。(\d{3}+$)表示3的倍數個數字,如3個數字6個數字等,?=表示后面一定是3的倍數個數字。使用substring(start,length)獲取第一個是否是“,”。如果是,則去掉。
1 MillenniumRepresentation(value){ 2 var reg=/(?=(?!)(\d{3})+$)/g; 3 let StringValue = String(value).replace(reg, ',') 4 if(StringValue.substring(0,1)===','){ 5 return StringValue.replace(/,/,''); 6 }else{ 7 return StringValue 8 } 9 }