JavaScript 如何使数组中的字符串成为新数组中对象的键
在本文中,我们要完成的任务是将数组中的字符串变成新数组中对象的键。让我们来考虑一个简单的数组:
let array= ['bike', 'car']
现在,我们要使用 map() 将上面的数组转换成一个新数组(对象中的键)。数组将会变成这样 –
let newArray= [{shorts: []},{tees: []}, ]
让我们深入学习一下如何在JavaScript中将数组中的字符串变为对象中的键,形成一个新数组。
使用map()方法
map() 方法在对每个元素执行给定函数后,从调用数组的内容构建一个新数组。
语法
以下是 map() 方法的语法:
array.map(function(currentValue, index, arr), thisValue)
为了更好的理解,让我们看一下以下的示例,如何将数组中的字符串转换为对象中的键,并生成一个新的数组
示例
在下面的示例中,我们使用 map() 来将数组中的字符串转换为对象中的键。
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<script>
let arr = ['bike', 'car'];
let newArr = arr.map(a => ({ [a]: [] }));
document.getElementById("tutorial").innerHTML=JSON.stringify(newArr);
</script>
</body>
</html>
当脚本执行时,它将生成一个由数组组成的输出,在执行脚本时,触发的事件激活了这个网页。
示例
下面是另一个示例
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<script>
let array= ['Bheem', 'Ram']
let newarray = [];
for(let item of array) {
let obj = {};
obj[item] = [];
newarray.push(obj)
}
document.getElementById("tutorial").innerHTML=JSON.stringify(newarray);
</script>
</body>
</html>
运行上面的脚本后,输出窗口将弹出,显示作为脚本运行结果的在网页上打印的数组。这是一个由运行脚本触发的事件。
示例
执行以下代码以观察如何使用 map() 将数组字符串转换为对象的键。
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<p id="tutorial1"></p>
<script>
var values = ['studentNames', 'studentMarks'];
document.getElementById("tutorial").innerHTML=JSON.stringify(values);
var convertIntoNewArray = values.map(arrayObject => ({ [arrayObject]: [] }));
document.getElementById("tutorial1").innerHTML=JSON.stringify(convertIntoNewArray);
</script>
</body>
</html>
当脚本执行时,事件被触发,并在网页上显示实际数组和更改后的数组。