Javascript 对象扩展
Javascript Object Extension
我正在使用传单在我的网站上绘制地图。我想动态构建图层切换器。构造函数采用一个对象,键是要在地图上显示的图层的名称,值是图层对象本身。我正在从 AJAX 返回的数组动态构建切换器。我遇到的问题是我不知道如何让数组对象的值成为新对象中的键。我的代码如下所示:
$.ajax ({
url: '...',
data: { ... },
dataType: 'json',
success: function (data) {
var overlayMaps = {};
for (var i in data.elems) {
var layer = new Layer (...);
overlayMaps = $.extend ({}, overlayMaps, {data.elems[i].name : layer});
map.addLayer (layer);
}
map.addControl (new L.Control.Layers (baseMaps, overlayMaps));
}
});
我的问题是如何执行#9行。 data.elems[i].name
不想工作。我missing : after property id
收到此错误,直接指向data
后的.
。有什么想法吗?
我认为您只是在寻找括号表示法。取而代之的是:
overlayMaps = $.extend ({}, overlayMaps, {data.elems[i].name, layer});
你想要这个:
var opts = {};
opts[data.elems[i].name] = layer;
overlayMaps = $.extend ({}, overlayMaps, opts);
相关文章:
- 使用第二个原型扩展对象
- 如何在不安装npm的情况下一次性扩展对象
- 在下划线.js中扩展对象的最佳实践
- 如何使用Javascript扩展对象'的原型使用声明中的变量
- Javascript扩展对象's原型,但保留旧原型
- 扩展对象导致jQuery错误
- 使用函数调用模式扩展对象.怎样
- 如何使用jquery扩展对象
- jQuery - 扩展对象,同时确保数组成员的完整性
- 用于扩展对象的咖啡脚本
- 下划线JS不会扩展对象
- 猫鼬 + lodash 扩展对象复制数组不正确
- 如何在忽略空值的同时扩展对象
- Javascript 函数,用扩展扩展扩展对象
- 尝试在不可扩展对象上定义属性时,弱映射填充项引发错误
- 嵌套对象的 JQuery 扩展 - 在扩展上设置 props 也会更改原始扩展对象
- 扩展对象原型时出现 jQuery 错误
- 用javascript/angular扩展对象
- 为什么在扩展对象时使用Object.create作为原型
- 扩展对象正在破坏我的代码.我能做什么