Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以使用lodash assign方法确保按属性顺序排列吗_Javascript_Lodash - Fatal编程技术网

Javascript 我可以使用lodash assign方法确保按属性顺序排列吗

Javascript 我可以使用lodash assign方法确保按属性顺序排列吗,javascript,lodash,Javascript,Lodash,使用lodash分配方法,我可以这样做吗 _.assign(self, { inputContext: createAddonInputContext(), currentEmployee: _.first(self.inputContext.employeeList), }); currentEmployee属性值的计算取决于已分配的inputContext。我的问题是,这会一直有效吗,或者在某些环境中会中断,例如,当curre

使用lodash分配方法,我可以这样做吗

_.assign(self, {
            inputContext: createAddonInputContext(),
            currentEmployee: _.first(self.inputContext.employeeList),
        });
currentEmployee
属性值的计算取决于已分配的
inputContext
。我的问题是,这会一直有效吗,或者在某些环境中会中断,例如,当
currentEmployee
将首先被分配时? 换句话说,在计算值时,属性在源对象文字中的显示顺序是否保证了相同的顺序?我知道,当我们在javascript对象上进行迭代时,顺序是不确定的。这就是我的问题

currentEmploye
属性值的计算取决于已分配的
inputContext

然后,您需要分别分配它们:

self.inputContext = createAddonInputContext();
self.currentEmployee = _.first(self.inputContext.employeeList);
这是否始终有效,或者在某些环境中可能会中断,例如,将首先分配
currentEmployee

这永远不会起作用,它将在所有环境中中断。在执行对
assign
的调用并将任何内容分配给
self
之前,将对对象文本及其两个属性值进行求值

在计算值时,属性在源对象文字中的显示顺序是否保证相同的顺序

是的,事实上,对象属性值总是按源顺序计算,但这并不重要,在创建整个对象之前的值。

事实上,这永远不会起作用。甚至在调用
assign
之前,对象文字及其属性也会被计算。