使用jQuery或JS为印度数字添加逗号
Add commas to Indian numbers using jQuery or JS
我用d3来可视化数据,我用这个函数把数字从阿拉伯数字转换成印度数字(1> ١)
function arNum(numb){
var str = numb.toString();
var arabic = {"0" : '٠', "1": '١',"2": '٢',"3": '٣',"4": '٤',"5": '٥',"6": '٦',"7": '٧',"8": '٨',"9": '٩'};
var chars = str.split("");
var newnum = new Array();
for (var i = 0; i < chars.length; i++) {
newnum[i] = arabic[ chars[i] ];
}
return newnum.join("");
}
效果非常好,然后我想用逗号来分隔数字,比如1000到1000,但是我需要用像这样的印度数字来完成:١,٠٠٠
所以我使用了这个函数,它可以处理阿拉伯数字123456789,但不能处理印度数字:
function commaSeparateNumber(val){
while (/('d+)('d{3})/.test(val.toString())){
val = val.toString().replace(/('d+)('d{3})/, '$1'+','+'$2');
}
return val;
}
所以请帮忙!
可以先在阿拉伯数字后面加上逗号,然后再转换成印度数字
我在您的JSfiddle中尝试了它http://jsfiddle.net/samehsubscription/F9zCK/,它工作得很好。像下面这样更新arNum函数:
function arNum(numb){
var str = numb.toString();
while (/('d+)('d{3})/.test(str.toString())){
str = str.toString().replace(/('d+)('d{3})/, '$1'+','+'$2');
}
var arabic = {"0" : '٠', "1": '١',"2": '٢',"3": '٣',"4": '٤',"5": '٥',"6": '٦',"7": '٧',"8": '٨',"9": '٩'};
var chars = str.split("");
var newnum = new Array();
for (var i = 0; i < chars.length; i++) {
if(chars[i] == ",") newnum[i] = ",";
else
newnum[i] = arabic[ chars[i] ];
}
return newnum.join("");
}
您可以根据需要使用此函数或此函数的索引:
Number.prototype.NumberFormat = function (decimals, decPoint, thousandsSep) {
decPoint = typeof decPoint !== 'undefined' ? decPoint : '.';
thousandsSep = typeof thousandsSep !== 'undefined' ? thousandsSep : ',';
var parts = this.toFixed(decimals).toString().split('.');
parts[0] = parts[0].replace(/'B(?=('d{3})+(?!'d))/g, thousandsSep);
return parts.join(decPoint);
};
Just call
val = val.toString().NumberFormat(2);
相关文章:
- 在 Javascript 不起作用的情况下为数字添加逗号
- 如何在 javascript 中为字符串中的数字添加下划线
- 将数字添加到文本框
- 使用javascript为网站的body标记中的所有数字添加一个span
- 如何在文本框vue.js上根据指定的数字添加行
- AngularJS如何获取一个数组,该数组将数字添加到函数中的元素,然后用另一个函数分散其注意力
- 使用 Jquery 为数字添加跨度
- 向数字添加百分之一位,该数字可以逗号或句点分隔
- 根据所选数字添加文本输入
- 将 JavaScript 数组中的 n 个数字添加到数组中的先前数字
- 有没有办法在不使用循环的情况下更新多个文档以将特定数字添加到一列
- 在javascript中自动为数字添加逗号
- Javascript:如何动态地将数字添加到变量名称中
- JQuery 获取链接并根据第 n 个数字添加变量
- 在 jquery 循环中将数字添加到运行总计
- 将字符串添加到数字,将数字添加到字符串
- 如何使用jquery将数字添加到输入ID名称中
- 我有一个javascript函数,可以将数字添加到数组中
- 如何在JS计数器中每3个数字添加一个冒号
- 只对大写字母和数字添加验证