数据转换的作用
主要对服务器反馈的数据及特定函数方法返回的数据进行处理
使之变为与需求相对应的数据类型
转换成 数值 -number
- 1 Number()
console.log(Number('123'));
//可以把任意值转换成数值类型,但是如果字符串中有不是数字的字符,返回NaN
- 2 parseInt() 和 parseFloat()
// parseInt() 把字符串类型的整数或者小数都转化为整数;
// parseFloat() 把字符串类型的整数转化整数,把小数转化为小数
var num1 = parseInt("12"); // 12
var num1 = parseInt("12.3"); //12
var num1 = parseFloat("12"); //12
var num1 = parseFloat("12.3");//12.3
var num1 = parseInt("12.3abc"); // 返回12,如果第一个字符是数字会解析知道遇到非数字结束
var num2 = parseInt("abc123"); // 返回NaN,如果第一个字符不是数字或者符号就返回NaN
NaN(表示非数字)
isNaN(data) - 判断data是否非数字
传入的参数可以是String自带内部转化机制
1、true - 非数字,false - 是数字
2、data只能是数字,否则返回(true)表示非数字
这两个方法都是从字符串左往右解析,如果遇到了解析不的字符便停止解析返回当前已解析的字符串
- 3 算术运算法
var str = '500';
console.log(+str); // 取正
console.log(-str); // 取负
// 强制将 - 两边的非数字,转化为数字
console.log(str - 0); +0呢???
转换成 字符串类型 - string
- 1. String ( )
var num = 5;
num = String(num);
console.log(num);
- 2. toString ( )
var num = 5;
console.log(num.toString());// 把数值5变成字符串5
//将来所有的数据都会有toString()方法,除了null和undefined
- 3. 拼串
var num = 5;
num = num + "";
console.log(num);
转换成布尔类型
所有的值都可以转换成布尔类型
其中 0
, ""
, undefined
,null
, NaN
,这几个值会转换成false,其他值都会转换成true
这个代表的五大基本类型
// 没有值 => false
// 有值 => true
// number string undefined null
// 0 ''
注意 :
1. 'false' 它是字符串
2. NaN => false
- Boolean()
console.log(Boolean(1));
console.log(Boolean(0));
- !!
var a = "abc";
console.log(!!a);