1.将字符串'true'和'false' 转为布尔值
JSON.parse('true') // 返回true
JSON.parse('false') // 返回false
2.转为字符串
var a = 123
//No.1
console.log(a.toString()) // echo '123'
//No.2
console.log(a+'') // echo '123'
//No.3
console.log(String(123)) // echo '123'
3.转为数字
// Number 可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN
var a = '123'
console.log(Number(a)) // echo 123
var b = '123a1'
console.log(Number(b)) // echo NaN
// parseInt 转换为整数
var a = '12.3'
console.log(parseInt(a)) // echo 12
var b = "12.3px"
console.log(parseInt(b)) // echo 12
var c = "ab12.3"
console.log(parseInt(c)) // echo NaN 如果第一个字符不是数字或者符号就返回NaN
// parseFloat 转换为浮点数(小数)
var a = '12'
console.log(parseFloat(a)) echo 12
var b = '12.3'
console.log(parseFloat(a)) echo 12.3
var b = "12.3px"
console.log(parseInt(b)) // echo 12
var c = "ab12.3"
console.log(parseInt(c)) // echo NaN 如果第一个字符不是数字或者符号就返回NaN
4.数组转字符串
// join
var arr = ['a','b','c'];
console.log(arr.join('-')); // echo a-b-c
// toString() 以英文逗号分隔
var arr = ['a','b','c'];
console.log(arr.toString()); // echo a,b,c
// toLocaleString() 用本地符号分隔
var arr = ['a','b','c'];
console.log(arr.toLocaleString()); // echo a,b,c
附:toString 和 toLocaleString的区别
这2个函数可以把 时间、数组、数值等其它对象转换成 字符串;在大多数情况下,它们转换成 字符串没有什么区别。只有在以下2种情况下有区别:
1:当数字是四位数及以上时,toLocaleString()会本地化数字,按3位一组隔开,如:
var dd = 1235001240;
console.log( dd.toString());
console.log( dd.toLocaleString())
打印结果:
1235001240
1,235,001,240 //用逗号隔开
2:当目标是标准时间格式时,toLocaleString()会本地化时间,如:
var dd = new Date();
console.log( dd.toString());
console.log( dd.toLocaleString())
打印结果:
Fri Sep 07 2018 08:29:59 GMT+0800 (中国标准时间)
2018-9-7 08:29:59 //本地化了时间格式
5.字符串转数组
var str = '1,2,3,4,巴德,merge'
var arr = str.split(',')
console.log(arr); // echo ["1", "2", "3", "4", "巴德", "merge"] 数组
6.数组转数组格式化,数组格式化转数组
var str = '1,2,3,4,巴德,merge';
var arr = str.split(',');
var strify = JSON.stringify(arr);
console.log(strify); // ["1", "2", "3", "4", "巴德", "merge"] 字符串
var arrParse = JSON.parse(strify);
console.log(arrParse); // ["1", "2", "3", "4", "巴德", "merge"] 数组