一.三种包装对象,基本类型里的包装对象
string number boolean
var str = 'hhh'
var str = new String('hello')
str.方法()
包装对象的实现原理:
调用方法时,内部创建了对象并调用方法,调用完方法后将对象清空
二.其他内置对象
Array Function Date Object Math
三.装箱和拆箱
装箱:将基本数据类型转化为对应的引用数据类型的操作
var num = 123
var objNum = new Number(123)
拆箱:将引用数据类型转化为对应的值类型对象
input:传入的值
type:值类型
1.判断input是不是原始类型的值:是,直接返回
2.不是:input.valueOf():是,直接返回
3.还不是:input.toString():string是原始类型 返回
4.报错
valueOf():input 原始类型:有:返回,没有:返回对象本身
toString():input 字符串转换,如果是对象输出:[object type] type:对象的类型
测试题:
1. console.log([]+[])
2.console.log([]+{})
3.console.log({}+[])
原因是有些浏览器会把{}识别成代码块,console.log(+'')