使用变量创建一个对象文字,如何只获取其值
use variable to create an Object literal, how to get just its value
你能解释一下为什么这个对象同时获得变量/值而不仅仅是它的值吗?
var a = 'foo', b = 'bar', obj = {a, b};
预期
obj = {'foo' : 'bar'}
结果
obj = {a: "foo", b: "bar"}
谢谢
在 ES5 JavaScript 中,你的代码将是一个语法错误。
在 ES2015 JavaScript 中,
var obj = {a, b}
是 的简写
var obj = { a: a, b: b }
如果你想要{foo: "bar"}
你可以(在ES2015中)使用
var obj = { [a]: b }
为了与旧环境兼容,您必须使用两个语句:
var obj = {};
obj[a] = b;
原因是,您将它们添加为两个变量,成员而不是键值对。它是预期结果(ES6/ES2015)或语法错误(ES5,因为应该有一个键:用逗号分隔的值对)。您正在寻找的是:
obj = {};
abj[a] = b;
需要注意的有趣事情是,给予:
obj = {a: b};
将a
作为新键,而不是替换为 a
的值。
尝试使用以下代码:
obj[a] = b;
这将为您提供:
obj = { "foo" : "bar" }
您最初的操作方式只是速记并将变量传递给对象,而不仅仅是它们的值
相关文章:
- Javascript:无法获取变量中的单选按钮值
- 活动选项卡's源代码-获取变量s值
- 使用nodejs从url中获取变量
- Handlebars帮助程序未获取变量的值
- 通过Ajax获取变量
- for 循环和 if 语句,获取变量并存储它
- 从javascript表达式(Rhino)中获取变量
- 如何从 Chrome 扩展程序中的内容脚本中获取变量
- 从对象实例中获取变量名称
- 如何通过 .get() 从文件中获取变量
- 使用chrome.storage.get获取变量
- Rails/JS-在不刷新页面的情况下获取变量
- Jquery:如何获取变量的局部外部函数
- 从外部js文件获取变量
- 如何获取变量's设置元素时的文字值's onclick处理程序
- 从查询字符串中获取变量,将其与Javascript中的数组匹配
- 如何在另一个php文件中从ajax获取变量
- 通过Ajaxrequest.open从Javascript获取变量到PHP文件
- Jade:在Bootstrap Modal中获取变量
- 使用Chrome扩展从以前的选项卡中获取变量