cloneWith source npm
_.cloneWith(value, [customizer])
这个方法类似 _.clone
,除了它接受一个 customizer
定制返回的拷贝值。
如果 customizer
返回 undefined
将会拷贝处理方法代替。
customizer
会传入5个参数:(value [, index|key, object, stack])
参数
- value (*)
要拷贝的值
- [customizer] (Function)
这个函数定制返回的拷贝值
返回值 (*)
返回拷贝后的值
示例
function customizer(value) {
if (_.isElement(value)) {
return value.cloneNode(false);
}
}
var el = _.cloneWith(document.body, customizer);
console.log(el === document.body);
// => false
console.log(el.nodeName);
// => 'BODY'
console.log(el.childNodes.length);
// => 0