JS对象的读写属性

对象的属性读写:
  1.获取属性值
   ①对象名.属性名
    例子:
       var obj = {
         'userName':'李白',
         'sex':'男',
         'hobby':['下棋','写诗','画画']
         }
         var result = obj.hobby;
         console.log(result);//["下棋", "写诗", "画画"]
   ②对象名[属性名]
     var result = obj['sex'];
     console.log(result);//男

 2.给对象属性赋值
  ①更改属性值
     obj.userName='杜甫';
     obj['userName']='杜牧';
     console.log(obj);
  ②添加属性
     obj.height = 180;
     obj['weight'] = '90kg';
     console.log(obj);
3.当下标超过数组 字符串 范围 或者 对象调用不存在的属性时 都返回 undefined
    var obj = {
        'userName':'李白',
        'sex':'男',
        'hobby':['下棋','写诗','画画']
    };
    var a = 'abcdef';
    var arr = [1,2,3,4,5];
    console.log(a[12]);//undefined
    console.log(arr[11]);//undefined
    console.log(obj.height);//undefined
[]运算符 与.运算符区别?
   1.中括号运算符可以使用字符串变量 作为属性名 但是 .运算符不行
        console.log(obj.str);//undefined
        console.log('[]',obj[str]);//[] 安琪拉
   2.点运算符可以使用js中的关键字作为属性 而【】不行
        obj.var=90;
        obj[var]=90;
        console.log(obj.var);//90
        console.log(obj[var]);//报错 SyntaxError: expected expression, got keyword 'var'
   3.[]运算符可以使用纯数字作为属性  而 .运算符不可以
        obj.11="22";
        obj[11]="22";
        console.log(obj.11);//报错 SyntaxError: unexpected token: numeric literal
        console.log(obj[11]);//22
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值