gpt4 book ai didi

javascript - 学生尝试复制下划线的扩展函数

转载 作者:行者123 更新时间:2023-12-02 14:26:31 25 4
gpt4 key购买 nike

嗨,我正在尝试创建基于下划线的扩展函数。我不知道该怎么做。我已经成功地创建了其他下划线属性的其他副本,但这个副本并没有引起任何想法。我希望有人可以解释如何使用 native JavaScript 创建 ._extend 以及它是如何工作的。这是起始框架。提前致谢。

var extend = function(obj){


}

最佳答案

Underscore extend方法基本上接受两个参数:destinationsources,并返回 destination 对象。要复制其功能,一个简单的 Object.assign就可以了。

例如

var extendObject = function (destination, ...sources) {
return Object.assign(destination, ...sources);
}

如果您注意到,上面的方法使用 Rest parameter ,仅ES >= 2015支持。如果你想支持较低版本的ES,你可以简单地这样做,

var extendObject = function (destination, source) {
return Object.assign(destination, source);
}

使用

var dest = {a: 1, b: 2};
var src1 = {c: 3, d: 4};
var src2 = {e: 5, f: 6};

// ES >= 2015
extendObject(dest, src1); //{a: 1, b: 2, c: 3, d: 4}
extendObject(dest, src1, src2); //{a: 1, b: 2, c: 3, d: 4, e: 5, f: 6}

// ES <= 5
extendObject(dest, src1); //{a: 1, b: 2, c: 3, d: 4}
extendObject(dest, src2); //{a: 1, b: 2, c: 3, d: 4, e: 5, f: 6}

关于javascript - 学生尝试复制下划线的扩展函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38193875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com