以下Javascript替换方法如何工作?
records.replace(index, 1, this.get(`model.data.${index}`))
我通常看到带有2个参数的JS replace(),但不确定3个参数如何工作?
records是对象的数组(用于单个表行的呈现)
答案 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。