美文网首页
js对象如何用变量作为属性名(键值)

js对象如何用变量作为属性名(键值)

作者: Richieangel | 来源:发表于2017-07-25 15:39 被阅读0次

刚做小程序的过程中遇到一个小问题,使用setData更新数据时,想修改一个数组中的某个值,setData的参数是传入一个对象,我只想修改数组中某一条数据,那我就得传入一个带数组key的属性名进去

最开始我想当然的定一个变量传入进去

var keyname = 'buyAttr.attr[' + key + '].active';
this.setData({keyname:active})

然而发现并没有修改成功,最后查了下资料,原来keyname直接被作为属性名了,我们需要给属性名加上中括号,才能被识别为变量

var keyname = 'buyAttr.attr[' + key + '].active';
this.setData({[keyname]:active})

也可以直接

this.setData({['buyAttr.attr[' + key + '].active']:active})

相关文章

  • js对象如何用变量作为属性名(键值)

    刚做小程序的过程中遇到一个小问题,使用setData更新数据时,想修改一个数组中的某个值,setData的参数是传...

  • 2019-08-26

    js对象。可以认为是变量的容器,类似键值对的形式。访问对象属性的时候,也是通过 对象.属性 的形式。对象的方法(...

  • javaScript之ES6(四)

    对象 对象的属性 属性名可省略ES6中,当对象中的key:value键值对,如果value是个变量/函数,此时省略...

  • ES6——对象(object)

    属性简写 ES6允许直接写入变量作为对象的属性,属性名是变量名,属性值是变量值。 对象方法简写 如果是Genera...

  • js对象与继承

    对象:由多组无序属性组成的数据结构 (键值对) 成对出现:属性名 属性值字面量 简单对象也存在构造函数 (如:...

  • 值得一看的文章--面试可能用得到

    js系列 js面试题 : 本文全面考察了: 变量名提升、this作用域链、运算符优先级、全局变量名污染已经对象属性...

  • react 对象动态添加属性 setState

    // js 对象动态添加 js对象动态添加 //总结,给对象动态添加变量属性的方法如下: //obj[变量]=变...

  • 对象的拓展

    对象属性的简写 当对象的属性名和变量名一样时,可以简写。如 对象方法的简写 Object.assign() Obj...

  • 对象

    对象是JS中的基本数据类型,对象可以看做是属性的无序集合,每个属性都是一个键值对。属性名是字符串,值可是是原始值或...

  • ES6 对象的扩展

    属性的简洁表示法 我们知道对象是由键值对组成的,在 ES6 中允许在对象的大括号内直接写入变量和函数,此时属性名是...

网友评论

      本文标题:js对象如何用变量作为属性名(键值)

      本文链接:https://www.haomeiwen.com/subject/zknwkxtx.html