像JavaScript中的变量赋值一样,一次性将多个值赋值给一个对象

像JavaScript中的变量赋值一样,一次性将多个值赋值给一个对象,javascript,Javascript,可以这样做: let a = 1, b = 3, c = 9; obj.a = 1, b = 2, c = 3; 是否也可以执行以下操作: let a = 1, b = 3, c = 9; obj.a = 1, b = 2, c = 3; 这仍然是非常可读的,但是键入要少得多,然后多次写入obj。如果已经定义了变量,您可以使用速记属性名一次性定义对象,而无需任何重复: const obj = { a, b, c }; 您可

可以这样做:

let a = 1,
    b = 3,
    c = 9;
obj.a = 1,
    b = 2,
    c = 3;
是否也可以执行以下操作:

let a = 1,
    b = 3,
    c = 9;
obj.a = 1,
    b = 2,
    c = 3;

这仍然是非常可读的,但是键入要少得多,然后多次写入
obj

如果已经定义了变量,您可以使用速记属性名一次性定义对象,而无需任何重复:

const obj = { a, b, c };

您可以使用速记属性名来分配定义的变量
设a=1,
b=3,
c=9;
设obj={a,b,c}

console.log(obj)
如果尚未分配变量,则可以使用
Object.assign

constobj=Object.assign({},{a:1,b:2,c:3});

控制台日志(obj)如果属性名称和值之间存在关系,则可以使用
map
编写紧凑的对象定义。否则,可以使用名称和值初始化对象

//函数
var obj={};
[a',b',c'].map((x,i)=>(obj[x]=i));
控制台日志(obj);
//无功能
var obj1={a:1,b:2,c:4};
控制台日志(obj1)
您可以这样做(如果对象是可重新分配的,例如:
let
NOT
const
):


谢谢:)

声明发生得更早,我只需要分配任务,您可以跳入您的delorean并使用。。。但是不推荐使用
Object.assign(obj,{a:1,b:2,c:3})
可以在一行中完成,但仅仅在一行中分配3次并不是一个坏主意,无需输入任何内容可以说是早期程序员的目标之一。有经验的程序员选择可读性和可编辑性而不是简洁性。作为证明,几乎所有大公司的风格指南都会告诉你不要这样编码。这是目前为止最好的。虽然使用了双内存,但很容易理解
双内存使用
huh?@MuhammadUmer在大多数情况下,内存使用不会成为问题,因为JS使用grabage collector。这也是我现在正在做的。所以很高兴看到有人推荐它。我看到的唯一问题是,我正在为相同数量的数据声明/分配2个变量。但这不是一个大问题,甚至不是一个中等问题。