对象的属性当作变量去赋值的时候,必须用引号包裹吗?不会被当作字符串去赋值吗?

对象的属性当作变量去赋值的时候,必须用引号包裹吗?不会被当作字符串去赋值吗?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕星星 2022-08-06 19:24:49

同学你好,{}中的属性名不加引号也是字符串的格式,例如用[]形式获取的时候

https://img1.sycdn.imooc.com//climg/62ee4f4c09e7feae06770252.jpg

所以定义变量值如果是字符,需要加引号,否则会报错。

祝学习愉快!

  • 提问者 张小阳_ #1

    如果对象的值是字符串,就必须得用['']这种方式赋值了,属性值是数字,用' '就可以赋值。对吗

    2022-08-06 21:00:41
  • 好帮手慕慕子 回复 提问者 张小阳_ #2

    不是特别理解同学描述的是什么意思,可以参考如下解析理解下:

    1、对象下的属性名加不加引号,默认都是字符串类型的,如下:

    https://img1.sycdn.imooc.com//climg/62ef25d20919c4a707430214.jpg

    2、属性值加了引号就表示字符串类型了, 实际上,属性值是什么类型就要写什么类型即可,例如:数字类型就直接写数字,布尔值就直接写布尔值等。

    3、获取对象下属性名对应的属性值,与属性值的类型无关,粘贴的截图中,重点是区分是否使用变量保存了属性名,如下:

    (1)如果使用变量保存属性名,那么就需要使用方括号语法获取对应的属性值。

    (2)如果没有使用变量保存属性名,直接使用点语法获取对应的属性值。

    如果还有疑问,可以再详细描述下具体是什么问题,便于帮助同学准确的定位与解决问题。

    祝学习愉快~

    2022-08-07 10:42:43
  • 提问者 张小阳_ 回复 好帮手慕慕子 #3

    https://img1.sycdn.imooc.com//climg/62ef2b72095cfa5215070990.jpg

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>初识对象</title>
    </head>
    
    <body>
        <script>
            var XiaoMing = {
                age: 18,
                sex: '女',
                hobbies: 'read, code',
                'favorite-book': ['舒克和贝塔', '理想'],
                test: ['hello', 'world']
            };
            console.log(XiaoMing.hobbies);  //read, code
            console.log(XiaoMing.test[1]);  //world
            console.log(XiaoMing['favorite-book'][0]);  // 舒克和贝塔
            console.log(XiaoMing.age);  //18
            var num = ['age'];
            console.log(XiaoMing[num]); //18
            console.log(XiaoMing.num);  //undefined
            var num2 = ['sex'];
            console.log(num2);
        </script>
    </body>
    
    </html>

    老师,我是想问以下,将对象的属性名作为变量去赋值,的问题。为啥有时候必须加[],而有时候不用加[]

    2022-08-07 11:05:36
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师