JavaScript语言精粹读书笔记

第2章语法

空白

块注释对于被注释的代码块来说是不安去的

/*
 var rm_a = /a*/.match(s);
 */

第3章对象

JavaScript的简单类型包括数字,字符串,布尔值(true 和false)、null 值和undefined值,其他所有的值都是对象。

var stooge= {
"first-name" : "Jerome",
"last-name": "Howard"
};

var flight = {
  airline: "Oceanic",
  number: 815,
  departure:{
    IATA:"SYD",
    time:"2004",
    city:"Sydeny"
  },
  arrival:{
    IATA:"LAX",
    time:"2004-09-23",
    city: "Los Angeles"
  }
};

3.2检索

检索不存在的成员元素将返回undefined值。检索一个undefined值将会导致typeError异常。
可以采用[]后缀中括住一个字符串表达式的方式。优先考虑使用. 方法。

stooge["first-name"] //"Joe"
flight.departure.IATA //"SYD"

<meta charset="utf-8">

<meta charset="utf-8">

clipboard.png

3.3更新

使用赋值语句。如果之前没有拥有那个属性,该属性被扩充到对象中。

clipboard.png

3.4引用

对象通过引用来传递。他们永远不会被拷贝

clipboard.png
var a = {}, b = {}, c = {};
//a、b、c 每个都引用一个不同的空对象
a = b = c = {};
// a、b、c都引用同一个对象

3.5原型

3.6反射

typeof flight.number   //'number'
typeof flight.status   //'string'
typeof flight.arrival  //'object'
typeof flight.manifest //'undefined'

原型链中的任何一个属性也会产生值

typeof flight.toString     //'functiton'
typeof flight.constructor  //'function'

hasOwnProperty方法,如果对象拥有独有的属性,它将返回true。hasOwnProperty方法不会检查原型链。

flight.hasOwnProperty('number') //true
flight.hasOwnProperty('constructor')  //false
clipboard.png

3.7枚举

3.8删除

delete运算符会移除对象中确定包含的属性。它不会触及原型链中的任何对象。删除对象的属性可能会让来自原型链中的属性浮现出来

3.9减少全局变量污染

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 感谢简书荐书的这次赠书活动,抱着试一试的态度中了奖,收到了这本汪洁所著的《时间的形状》。 上次在成甲老师的书中知道...
    我在灯火阑珊处阅读 7,288评论 9 10
  • mysql是现阶段使用最广泛的关系型数据库 mysql基本操作
    czlyj阅读 163评论 0 0
  • 最近几天都是阴雨,如同可儿的心情。不过还好,今天终于放晴了。 “可儿,都好几天了,你也该...
    沐雨淋阅读 256评论 0 0