3.String、null、undefined、boolean
一、字符串
所有用单引号(‘’)、双引号(“”)、反引号(``)包起来的都是字符串
.toString()方法
把其他类型的值转换为字符串
数字不能直接使用会报错(1.通String()),需使用变量形式
null和undefined的禁止直接转换,需使用字符串拼接的方式(’’+null===‘null’)
普通对象.toString()==="[object Object]":Object.prototype.toString()方法不是转换字符串的,而是用来检测数据类型的
四则运算中除了+其他的都是数学计算,只有+可能存在字符串拼接
a = 10 +null +[] +undefined +'66' +null +[] +10 +false;
上述代码从左向右遇到字符串开始转换为字符串进行拼接
依次为 10 + 0 + 1 + ‘’ + ‘undefined’ + ‘66’ + ‘null’ + ‘’ + ‘ 10’ + ‘false’====>‘11undefined66null10false’
二、boolean
只有两个值true/false,把其他类型的值转换为字符串,只有0,NaN,’’,null,undefined五个值转换为false,其余全为true
转换方法
1、Boolean();
2、!/!!;
3、条件判断(if、else if...);
三、null、undefined
null:意料之中
undefined:意料之外
一般最好用null作为初始的空值
创建一个变量没有赋值则默认为undefined