- 如何将浮点数点左边的数每三位添加一个逗号,如12000000.11转化为『12,000,000.11』?
function formatNumber(value) {
var re = /^(\-?)(\d{1,3}(,\d\d\d)*(\.\d+)?|\d+(\.\d+)?)$/;
if (!re.test(value)) {
return value;
}
value += '';
const list = value.split('.');
const prefix = list[0].charAt(0) === '-' ? '-' : '';
let num = prefix ? list[0].slice(1) : list[0];
let result = '';
while (num.length > 3) {
result = `,${num.slice(-3)}${result}`;
num = num.slice(0, num.length - 3);
}
if (num) {
result = num + result;
}
return `${prefix}${result}${list[1] ? `.${list[1]}` : ''}`;
}
2.移除千分位。如『12,000,000.11』转化为 12000000.11
function removalThousandths(num)
{
var re = /^(\-?)(\d{1,3}(,\d\d\d)*(\.\d+)?|\d+(\.\d+)?)$/;
if (!re.test(num)) {
return num;
}
var x = num.toString().split(',');
return parseFloat(x.join(""));
}
- 获取地址栏上携带的参数,如http://www.baidu.com?test=shuju;
function getUrlParam(name) {
if (window.location.href.indexOf('?') >= 0) {
var a = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
var t;
var i = 0;
var l = a.length;
for (; i < l; i++) {
if ((t = a[i].split('='))[0] === name) return t[1];
}
}
return null;
}
getUrlParam('test'); // 得到shuju
4.获取文件后缀
function getFileExtension(filename) {
return filename.slice((filename.lastIndexOf(".") - 1 >>> 0) + 2);
}
5.unicode编码与中文的互相转化
function tounicode(data)
{
if(data == '') return '请输入汉字';
var str ='';
for(var i=0;i<data.length;i++)
{
str+="\\\\u"+parseInt(data[i].charCodeAt(0),10).toString(16);
}
return str;
}
EG: tounicode('你好啊') => "\\u4f60\\u597d\\u554a"
function tohanzi(data)
{
if(data == '') return '请输入十六进制unicode';
data = data.split("\\u");
var str ='';
for(var i=0;i<data.length;i++)
{
str+=String.fromCharCode(parseInt(data[i],16).toString(10));
}
return str;
}
EG: tohanzi('\\u4f60\\u597d\\u554a') => 你好啊