Vla*_*lii 11 javascript arrays ecmascript-6
例如,我有一个包含3个数字的数组:
var arr = [124, -50, 24];
Run Code Online (Sandbox Code Playgroud)
我需要将此数组转换为对象:
{
x: 124,
y: -50,
z: 24
}
Run Code Online (Sandbox Code Playgroud)
我不想为此使用"旧式"语法,例如:
{
x: arr[0],
y: arr[1],
z: arr[2]
}
Run Code Online (Sandbox Code Playgroud)
所以现在,我正在使用这种语法:
const [x, y, z] = [...arr];
const obj = {x, y, z};
Run Code Online (Sandbox Code Playgroud)
但是,有没有办法用直接的解构数组来对象而不需要临时变量?
正如评论中已经提到的,您可以使用立即调用函数表达式 (IIFE)在一个步骤中创建对象,但它的可读性不如多个步骤。
const arr = [124, -50, 24];
const obj = (([x, y, z]) => ({ x, y, z }))(arr);
console.log(obj);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |