对象的属性访问的时候可以使用操作符号 . 也可以使用 ["identifier"]的方式,前者一般实现简单一些,但是一些属性名中涉及有数字或者有空格等的时候只能使用后者访问完成的!
于 P78 中可以看到常见的一些操作符号!
对于加法+运算符,如果操作的两个是数字或者是字符串的时候,计算的结果很简单。只要其中有一个是字符串的时候对应的就是按照字符串的相加的方式来完成的。这里就会有一些强制类型转换的问题。可以从代码的例子中去查看一些计算规则!
如果一个操作数是对象的,则对象会按照从原始值的转换规则转换为原始类型,日期对象是通过 toString()方法执行转换,其它对象则通过 valueOf()的方法进行转换,当不具备后者的方法的时候,其会按照前者的方式来进行转换的。
比较运算符号中如果一个操作数是对应的 NaN 的话,比较操作符返回的结果都是 false。
严格模式中的一些具体的细节代码:P128
JS对象:
基本的是具有对象和值,同时每个属性还有一些与之相关的值,称为属性特性。
- 可写:表示是否可以设置该属性的值
- 可枚举:表示是否可以通过for/in循环返回该属性
- 可配置:表示是否可以删除或者修改该属性
创建对象的几种方式: