JavaScript for Kids 学习笔记4. Objects

1. 创建对象
var cat = {
    'legs': 3,
    'name': 'Harmony',
    'color': 'Tortoiseshell'
};    
注意四个符号:
    { }           // 大括号,包起来
    :             // 冒号,分割key和value
    ,             // 逗号,分割多个属性
    ;             // 分号,写在最后,因为这是一个语句(定义了一个变量)
这就是个dictionary呀,或者说map。key-value pair。
怎么没有专用的keyword呢? 比如:class。还真是不习惯,js太小气了。还是Swift在这方面比较大方,class、struct、protocol、extension、enum、Dictionary等等,搞了一大堆,随便用。

2. Literals

  中文翻译为 “直接量” ,很别扭,还不如音译为 “雷特肉”偷笑

  array literal:  ['a', 'b', 'c']

  number literal:  37, 45

  Boolean literal: true, false

3. 不带引号的 Key 

var cat = {
    legs: 3,
    name: 'Harmony',
    color: 'Tortoiseshell',
    'full name': 'Harmony Yan'
};
    有个例外,'full name' ,因为中间有空格。

4. 访问对象中的值

    cat['name']
    cat['full name']
    cat.name
    space
    cat.full name  // ???, 中间不能有空格
    Object.keys(cat)

到Chrome Console中试一下:

5. 向Object中添加值

var dog = {};    // empty object
dog['legs'] = 4;
dog['name'] = 'kitty';
dog['color'] = 'yellow';
就是个Dictionary,就是个map。一点儿也不像Object。
6. 用 . 语法
dog.legs = 5;
dog.name = 'hello kitty';
dog.color = 'blue';

dog;
dog.ears;
这才有点像object了。

7. 对象的数组,对象中的数组

var pets = [dog, cat];    // the array contains objects
pets;
pets[0]['name'];
pets[0].name;

dog.food = ['bone', 'meat', 'cereal'];

8. 示例:把朋友们放到数组中

var anna = { name: "Anna", age: 11, luckyNumbers: [2, 4, 8, 16] };
var dave = { name: "Dave", age: 5, luckyNumbers: [3, 9, 40] };
var kate = { name: "Kate", age: 9, luckyNumbers: [1, 2, 3] };
var friends = [anna, dave, kate];
friends[1]
friends[1].name
friends[0].luckyNumbers[1];
  

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值