将动态键、值对添加到JavaScript数组或哈希表中
Add dynamic key, value pairs to JavaScript array or hash table
我正在尝试向现有的javascript关联数组添加一个键值对。密钥必须是一个变量。这是用于JSON编码的。我意识到有很多插件和框架,但我想要一个简单的答案。
ary.push({name: val});
其中ary
是新数组,name
是包含关键字的变量,val
是该条目的值。
我在一个jQuery
循环中执行此操作,该循环遍历表单字段。
在ES6中
在ES6中,可以使用析构函数赋值;
ary.push({[name]: val});
然而,考虑到这是ES6语法,通常需要注意事项;这在某些浏览器中不起作用(值得注意的是,IE和Edge 13)。。。尽管巴贝尔会替你转写这个。
没有ES6(传统浏览器支持)
您需要定义一个对象,并使用方括号表示法来设置属性;
var obj = {};
obj[name] = val;
ary.push(obj);
如果你有阅读更多内容的冲动,请参阅这篇关于方括号和点符号之间区别的文章。
var ary = [];
function pushToAry(name, val) {
var obj = {};
obj[name] = val;
ary.push(obj);
}
pushToAry("myName", "myVal");
刚刚完全阅读了你的问题,你只需要以下
$(your collection of form els).serializeArray();
好的旧jQuery
"关联数组"实际上只是一个对象。你不使用推送,你只需为对象分配属性:
ary[name] = val;
以下代码将帮助您
ary.push( {[name]: val} );
参见以下示例
let allData = [{name: "Cat", type: "Animal"}]
let finalData: any = [];
for (let i = 0; i < allData.length; i++)
{
let obj = allData[i];
for (let KEY in obj)
{
//Pushing data to other array as object
this.finalData.push({ [KEY] : obj[KEY] });
}
}
const tStyles = [];
for (const i of iStyles) {
const temp = {};
temp[`${style}`] = `../dist/css/uikit.${wFile}.${style}.css`;
tStyles.push(temp);
}
json:{"black-beege":"../dist/css/uikit.或.black-beijet.css"}
相关文章:
- 如何遍历包含对象的数组-javascript
- 保存数组javascript
- 查找数组javascript中包含的元素类型
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 从多维数组javascript中提取特定值
- 如何在数组javascript中选择伪随机值
- 拆分字符串数组(JavaScript)后未定义
- 从数组JavaScript中删除并返回最后n个项的最快方法
- 使用条件for循环更新数组-Javascript
- 从数组javascript创建新对象
- 用数组(javascript)中的值替换regex捕获
- 从数组[Javascript]的总长度中减去一个干净的数字
- 将一个字符串数组解析为一个新的数组javascript
- 如何将对象转换为对象数组javascript
- 赢得't循环数组javascript
- 从不同的数组 JavaScript 中获取值
- 多维数组 JAVASCRIPT 出了点问题
- 可以't分配给一个对象数组javascript
- 比较数组JavaScript中的对象
- 如何完成缺少(连续)元素的数组|Javascript