js11-1犀牛笔记

 1 2015.11.1 犀牛书读书笔记
 2 
 3 //page123 6.2
 4 var person={
 5     name:"wang",
 6     age:18,
 7     sex:"man"
 8 }
 9 
10 访问属性的方式有两种:
11 1. person.name;
12 2. person["name"]
13 
14 可以获得属性或者给属性赋值
15 []方括号内必须是字符串,可以是字符串变量
16 用以访问关键字或是空格的属性名
17 例如:  person["class"];  person["my name"]
18 
19 associative array  关联数组
20 person["name"]这种访问方式类似于数组,只不过是用字符串作为索引,这种数组也称为散列、映射或是字典.
21 javascript的对象都是关联数组(或是散列、映射或是字典)
22 
23 C和C++、java这类称为强类型语言strong typed,对象只能拥有固定数目的属性,并且属性名称应该提前定义好。
24 而javascript是弱语言类型,在任何对象中程序都可以创建属性,动态的给对象添加。
25 
26 var customer={
27     address0:"a",
28     address1:"aa",
29     address2:"aaa",
30     address3:"aaaa",
31 }
32 var addr="";
33 for (var i = 0; i <4; i++) {
34     addr=customer["address"+i]+"\n";
35 }
36 数组写法,访问对象属性的灵活性
37 
38 //page125 继承
39 查询一个对象o的x属性:
40     o-->o.prototype-->o.prototype.prototype  //此时也许将o.prototype赋给了其他对象
41 
42 属性赋值操作首先检查原型链,判定是否允许赋值操作
43 若允许赋值,也只会在原始对象上创建属性,而不会去修改原型链
44 例子:
45 var unitcircle={r:1};
46 var c=inherit(unitcircle);
47 c.x=1;c.y=2;
48 c.r=5;
49 unitcircle.r;//仍然为1,因为c.r会在c的域内创建r属性,不会影响原型链
50 
51 访问一个没有定义的属性不会出错
52 var o={};
53 o.sub;//undenfined------>并不会出错
54 
55 var x=book&&book.subtitle&&book.subtitle.length;//&&短路原理,当为真时才执行下一项。  为假时立即赋值并退出
56 
57 delete运算符可以删除对象的属性,格式为  delete person.name  或者   delete person["name"]
58 delete不能删除那些可配置性为false的对象
59   比如:
60       function f(){}
61       delele f;
62 
63 
64  

 

转载于:https://www.cnblogs.com/windSamW/p/4951450.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值