字符串数目字转换成 数值数字 最简单的方法是什么
字符串数字转换成 数值数字 最简单的方法是什么?
字符串数字转换成 数值数字 最简单的方法是什么?
a="123"
z=a+1 会变成1231
所以需要对a 进行数值转换
z=parseInt(a)+1
z=parseFloat(a)+1
z=a*1+1
哪个效率最高
------解决方案--------------------
a="123"
z=+a+1;
alert(z);
可以这样试试 效率就不知道了
------解决方案--------------------
a="123"
z=a+1 会变成1231
z = parseInt(a) + 1
用parseInt
------解决方案--------------------
z=a*1+1
这个肯定是最高的啊,若语言类型强制转换,不需要调用其他函数,时间空间复杂度都是最低的。
------解决方案--------------------
测试一下不就知道了。。不过这三个方法没有可比性,parseFloat与*1的方法实现的是同样的功能,跟parseInt就实现的功能就不一样的,没有可比性。
字符串数字转换成 数值数字 最简单的方法是什么?
a="123"
z=a+1 会变成1231
所以需要对a 进行数值转换
z=parseInt(a)+1
z=parseFloat(a)+1
z=a*1+1
哪个效率最高
------解决方案--------------------
a="123"
z=+a+1;
alert(z);
可以这样试试 效率就不知道了
------解决方案--------------------
a="123"
z=a+1 会变成1231
z = parseInt(a) + 1
用parseInt
------解决方案--------------------
z=a*1+1
这个肯定是最高的啊,若语言类型强制转换,不需要调用其他函数,时间空间复杂度都是最低的。
------解决方案--------------------
测试一下不就知道了。。不过这三个方法没有可比性,parseFloat与*1的方法实现的是同样的功能,跟parseInt就实现的功能就不一样的,没有可比性。
- JScript code
//建立测试数据 var ar = []; for (var i = 0; i < 999999; i ++) ar.push(i.toString()); var dStart, dEnd, result = []; //parseInt()方法 dStart = new Date(); for (var i = 0; i < ar.length; i ++) ar[i] = parseInt(ar[i]); dEnd = new Date(); result.push(dEnd.getTime() - dStart.getTime()); //parseFloat()方法 dStart = new Date(); for (var i = 0; i < ar.length; i ++) ar[i] = parseFloat(ar[i]); dEnd = new Date(); result.push(dEnd.getTime() - dStart.getTime()); //*1方法 dStart = new Date(); for (var i = 0; i < ar.length; i ++) ar[i] *= 1; dEnd = new Date(); result.push(dEnd.getTime() - dStart.getTime()); document.write('<p>parseInt方法耗时:' + result[0] + 'ms<br />parseFloat方法耗时:' + result[1] + 'ms<br />乘1方法耗时:' + result[2] + 'ms');
------解决方案--------------------
var a='1234';
var z=(a-0)+1; //z=1235
这种方法比较简单
------解决方案--------------------
直接 parseInt(a,10) 吧
------解决方案--------------------
额
“123”-0+1 你试试把 这个简单把
------解决方案--------------------
parseInt