1、对象具有唯一标识性,即使完全相同的两个对象也不是同一个对象。(js 创建的对象内存地址不同)
2、对象具有状态 同一对象可能处于不同的状态下 (js 对象的属性)
3、对象具有行为 对象的状态 可能因为他的行为发生改变 (js 对象的属性)
js 对象独特性:具有高度动态性,js 赋予使用者再运行时修改对象状态和行为的能力
属性描述对象
数据属性 value writable enumerable configurable
访问属性 get set
特殊的知识点
1.toString();// 报错
1 .toString();// 1
(1).toString();//1
词法分析 语法分析
装箱转换
每一种基本类型 Number String Boolean 再对象中都有对应的类(产生临时的对象)
拆箱操作
把对象转换成原始类型的值 用于对象与原始类型值对比或者计算
toprimitive(input,preferedType);
过程:1、输入原始值 直接返回
2、输入对象 调用 input.valueOf() 如果是原始值 直接返回
3、调用 input.toString() 如果是原始值 直接返回
4、报错
例如 []+[] = '';[]+{} ='[object object]';{}+[]=0 ;+[]=0;
隐式转换 会有拆箱过程
转换为同等类型
== +
不会进行隐式转换的 会有拆箱过程
===