Lodash - mergeWith 方法
語法
_.mergeWith(object, sources, customizer)
此方法類似於 _.merge,不同之處在於它接受 customizer, customizer 用於生成目標屬性和源屬性的合併值。如果 customizer 返回未定義,則方法負責合併。customizer 會使用六個引數呼叫:(objValue, srcValue, key, object, source, stack)。
引數
object (Object) − 目標物件
sources (...Object) − 源物件
customizer (Function) − 自定義分配值的函式
輸出
(Object) − 返回物件
示例
var _ = require('lodash');
var object = {
'a': [{ 'b': 2 }, { 'd': 4 }]
};
var other = {
'a': [{ 'c': 3 }, { 'e': 5 }]
};
function customizer(objValue, srcValue) {
if (_.isArray(objValue)) {
return objValue.concat(srcValue);
}
}
console.log(_.mergeWith(object, other, customizer));
將以上程式儲存在 tester.js 中。執行以下命令以執行此程式。
命令
\>node tester.js
輸出
{ a: [ { b: 2 }, { d: 4 }, { c: 3 }, { e: 5 } ] }
lodash_object.htm
廣告