zoukankan      html  css  js  c++  java
  • ES6 动态计算属性名

    在ES5之前,如果属性名是个变量或者需要动态计算,则只能通过 对象.[变量名] 的方式去访问。

    <script type="text/javascript">
        var p = {
            name : '李四',
            age : 20
        }
        var attName = 'name';
        console.log(p[attName]) //这里 attName表示的是一个变量名。
    </script>

    而且这种动态计算属性名的方式 在字面量中 是无法使用的。

    var attName = 'name';
        var p = {
            attName : '李四',  // 这里的attName是属性名,相当于各级p定义了属性名叫 attName的属性。
            age : 20
        }
        console.log(p[attName])  // undefined

    在ES6中,把属性名用[ ]括起来,则括号中就可以引用提前定义的变量。

    var attName = 'name';
        var p = {
            [attName] : '李四',  // 引用了变量attName。相当于添加了一个属性名为name的属性
            age : 20
        }
        console.log(p[attName])  // 李四
  • 相关阅读:
    网页CSS2
    C#(1)—类型、常量及变量
    进制转化
    12月26日提纲
    12月24日笔记
    12月23日笔记
    12月22日笔记
    12月21日笔记
    12月20日笔记
    break、continue与数组
  • 原文地址:https://www.cnblogs.com/mengfangui/p/9150458.html
Copyright © 2011-2022 走看看