用3个参数替换Javascript

时间:2019-02-18 12:36:20

标签: javascript

以下Javascript替换方法如何工作?

records.replace(index, 1, this.get(`model.data.${index}`))

我通常看到带有2个参数的JS replace(),但不确定3个参数如何工作?

records是对象的数组(用于单个表行的呈现)

2 个答案:

答案 0 :(得分:1)

  

我通常看到带有2个参数的JS replace()

您看到的replace方法可能是字符串的方法。

我有根据的猜测是,records并不是 一个字符串。

因此,您应该检查records的实际含义。该方法不是JS语言的一部分,因此它是records由开发人员定义的Object,或者是扩展某些内置类型(brrr)的原型。

在我看来,此方法与array's splice共享相似之处

如果records是一个数组,则在类似数组的对象上,开发人员实际上可以将replace添加为splice的别名,也许是因为在他看来它似乎更清楚(再次,我只是猜测,我没有足够的数据)。

如果我的猜测正确,则此行将用records所指向的索引替换1数组/类似数组的index元素中的{ {1}}。

答案 1 :(得分:1)

考虑到您正在使用Ember.js(如注释中所述),我假设您是指Ember.js的replace方法。它包含三个参数:开始替换的索引,应从数组中删除的元素数量,最后是要添加到数组中的元素数组。

有关更多信息,请签出this