javascript - 变量作为对象键在 IE 中不起作用

标签 javascript jquery

<分区>

Fiddle

var json = {name: 'chan'};
var variable = 'age';

$.extend(json, {[variable]: 35});

$('#result').html(JSON.stringify(json));

此方法适用于除 IE 以外的大多数流行浏览器,我需要动态定义对象键,如何使其适用于 IE?

最佳答案

对象初始值设定项中属性名称的 [] 表示法是 ES2015 功能,旧版本的 Internet Explorer 不支持它。 (旧版本的所有浏览器都不支持它;有很多移动设备也会认为这是一个错误。)

但是您可以在属性赋值表达式中使用 [ ]:

json[variable] = 35;

这应该适用于任何地方。

关于javascript - 变量作为对象键在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33037950/

相关文章:

javascript - 为什么我会得到这个 'cannot read property ' length' of undefined'? (JavaScript)

javascript - 使用 Knockout 进行部分 View 的对象列表

javascript - 使用 PHP 和 Javascript/Ajax 绕过 CORS

javascript - ajax调用完成后无法移除进度条

javascript - 最佳实践 : Nested subscriptions to receive user data?

javascript - jQuery Ajax 加载不工作

javascript - 如何在更改选择列表值时附加和删除 html 片段

javascript - 如何使用 jquery 连续检查输入的值?

javascript - 带有 AJAX 问题的 jQuery 提交表单

.net - 包含 Fiddler 的 CustomRules.js 中的持久存储