- 转换函数用时快、可读性强,推荐。
- 字符串转数字,用位运算速度快代码少,推荐。
- 强制类型转换中规中矩。
负十六进制数字符串转换为数字时。应首先将任何其转换为String(例如通过 + "" ),然后使用一元运算符或带基数的parseInt解析为数字。但是结果不是NaN的数值时,使用parseFloat更为合适。
JavaScript字符串转数字的5种方法及其陷阱
原文converting-strings-to-number-in-javascript-pitfalls
//--------------------字符串转数字---------------------------
var s = "234";
//1、纯数字转换
//字符串在运算操作中会被当做数字类型来处理
s *= 1;
//2 字符前加“+”
console.log(+s);
//string的两个转换函数,只对string有效
parseInt(s); // 234
parseFloat(s); //234
//强制类型转换
Number(s); // 234
//2、数字加字母等非数字转换
var s = '234string';
parseInt(s); //234
parseFloat(s); //234.0
//--------------------数字转换字符串---------------------------
var num=123123;
//1、toString()
console.log(num.toString());
//2、数字+任何字符串""
console.log(num+"");
// 关于字符串
//判断字符串是否包含 包含返回下标 不包含返回-1
var i = str.indexOf("x")
//最后一次下标的字符串的字符串
var i = str .lastIndexOf("")
//转化大小写
str.toUpperCase() //转大写
str.tolowerCase()// 转小写
//截取字符串 字符串.substr("从哪开始","截取几个")
str.substr(0,5)
关于速度,这几篇都说的不一样。
总之,优先用转换函数parseInt、parseFloat,有坑再换。
https://blog.csdn.net/Inuyasha1121/article/details/40182105
网友评论