一、 复杂数据类型检查
1、语法:
实例对象 instanceof 类型 //返回布尔值
Array Date 等内置对象=>Object
2、数组类型
let arr=[1,2]
Array.isArray(arr) //返回布尔值
二、原型链
1、显示原型和隐式原型
(1)prototype是所有构造函数都有的属性,称为显示原型
(2)_proto_是每个对象都有的属性,称为隐式原型
但是_proto_不是一个规范的属性,只是部分浏览器实现了此属性,对应的标准属性[[prototype]]
(3)每个对象都有一个_proto_属性指向它的原型对象,原型对象也是一个对象,原型对象也有_proto_指向它的原型(Object.prototype)
2、原型链
(1)概念:多个原型通过隐式原型_proto_链接起来,形成的一种链式结构
(2)作用:访问属性和方法沿着原型链方法查找直到null为止
三、一切皆对象
四、claa类(ES6新特性)
1、ES6新增的面向对象语法
解决使用构造函数和原型定义对象属性、方法问题更简易
2、语法
class 类名{
//构造器---私有属性方法
constructor(name,age){
this.name=name
this.age=age
}
//方法---原型公共的属性方法
say(){
console.log('说话')
}
}
let p=new 类名('jack',18)