我有一个对象,对于属性,我有名称和属性:
var name;
var attributes = new Array();
用户应该自行插入属性,但顺序为key-> value。
因此,无论用户插入哪个属性,都需要将其写入数组中。
示例:颜色->红色,用途->可选等...
有人可以帮我吗,我该怎么办?
谢谢!
答案 0 :(得分:0)
如果您从输入字段中获取数据,则可以先用逗号将其分割,然后再用该箭头将每个新创建的数组元素分割成一个对象,就像这样:
document.querySelector("#i").addEventListener("change", logObject);
function logObject(e) {
let val = this.value;
let arr = val.split(", ");
arr = arr.map(e => e.split("->"));
let obj = {};
arr.forEach(e => obj[e[0]] = e[1]);
console.log(obj)
}
<input id="i">
<br> color->red, use->optional
答案 1 :(得分:-2)
我认为您不应该为此实现数组,而应该使用这样的对象(地图)。
var attributes = {};
attributes.color = 'red';
attributes.use = 'optional';