zoukankan      html  css  js  c++  java
  • 记录,javascript中对象的属性名是字符串,却可以不用引号

    问题描述:今日看书,里面介绍js的对象的属性名是包括空字符串在内的所以字符串

    问题来了,我们平时定义的对象如下,是没有引号""or’'的

    var someone  = {
        first_name : “Jeo”,
        second_name : “Mike”
    };

    所以我写了以下程序测试,

    var stooge = {
        “first_name” : “Jeo”,
        “second_name” : “Mike”
    };
    var copy = {
        first_name : “Jeo”,
        second_name : “Mike”
    };
    if (stooge.first_name === copy.first_name)
    {
        document.write(‘I am right’);
    }
    else
    {
        document.write(‘Wrong!’);
    }

    结果输出为right

    也就是说,书上说的没错,是字符串,而且属性名是合法的(不是javascript的保留字)是允许不用引号括起来属性名

    另外,我又注意到了,调用对象的属性名的时候,我们知道,有两种写法:

    第一种stooge.first_name    还是 stooge.“first_name”  呢?

    第二种stooge[first_name]  还是 stooge[“first_name”] 呢?

    实验结果表明:

    第一种stooge.first_name

    应该这么写,也就是说,这种写法也是默认支持不用引号括起来属性名

    第二种stooge[“first_name”]

    此种写法类似数组,一定要在[]中加入对应有引号的字符串,才能识别出键

  • 相关阅读:
    1951: [Sdoi2010]古代猪文
    BZOJ 1911: [Apio2010]特别行动队[斜率优化dp]
    BZOJ 2038: [2009国家集训队]小Z的袜子(hose)&&莫队算法
    gdb命令整理
    1833: [ZJOI2010]count 数字计数
    1227: [SDOI2009]虔诚的墓主人
    P3197 [HNOI2008]越狱
    3505: [Cqoi2014]数三角形
    P3414 SAC#1
    3398: [Usaco2009 Feb]Bullcow 牡牛和牝牛
  • 原文地址:https://www.cnblogs.com/it-Ren/p/10541514.html
Copyright © 2011-2022 走看看