Как работает следующий метод замены Javascript?
records.replace(index, 1, this.get(`model.data.${index}`))
Я обычно видел JS replace() с 2 параметрами, но не уверен, как работают 3 параметра?
записи - это массив объектов (для рендеринга отдельных строк таблицы)
Что такое records?
записи - это массив объектов (для рендеринга отдельных строк таблицы)
Как спросил TKoL, что такое records? Нить? Множество? Что-то совсем другое? Дайте нам контекст, без дополнительной информации трудно ответить.
Это очень странно, у массивов в JavaScript по умолчанию нет метода replace. Какие библиотеки/фреймворки вы используете?
Я использую EmberJS... извините, что не добавил деталей в первоначальный вопрос
@testndtv Может быть, вы хотите это: emberjs.com/api/ember/2.15/classes/Ember.ArrayProxy/methods/…



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


I have normally seen JS replace() with 2 parameters
Метод replace, который вы видели, вероятно, был строковым.
Мое обоснованное предположение состоит в том, что records — это нет строка.
Итак, вы должны проверить, что такое records на самом деле. Метод не является частью языка JS, поэтому он либо records объект, определенный разработчиком, либо расширяет прототип некоторого встроенного типа (бррр).
Мне кажется, что этот метод имеет сходство с сращивание массива.
Если records является массивом, то к массивоподобному объекту разработчик мог бы добавить replace в качестве псевдонима splice, может быть потому, что ему показалось более понятным, что он делает (опять же, я просто догадываюсь, у меня нет достаточно данных).
Если мое предположение верно, эта строка заменит в элементе records массива/подобном массиву элемент 1 по индексу, указанному index, значением, возвращаемым this.get(…).
the replace method you've seen was probably the string's one. даже это принимает только два параметра, а не три, если вы передадите третий с запятой, это не повлияет
@CodeManiac Да, это то, о чем я говорю, возможно, я недостаточно ясно выразился :) ОП сказал I have normally seen JS replace() with 2 parameters, поэтому я ответил the replace method you've seen was probably the string's one. (это, на самом деле, принимает 2 параметра)
@ZERO ну да, с объемом данных, о которых идет речь, это неясно, но для меня эта строка не имеет смысла, поэтому я указал. P.s.: - я не минусовал :)
@CodeManiac, возможно, это мой английский, но я не понимаю, что не имеет смысла в этом предложении: ОП сказал, что до сих пор видел только методы replace с двумя аргументами, и я сказал, что, вероятно, метод replace, который он видел, был Строковые единицы, так как замена строки требует двух аргументов. :) Вы сказали, что «это не имеет смысла», так как замена String принимает только два параметра, но это именно то, что я также говорю, поэтому я, честно говоря, не понимаю. P.S. Меня все равно не волнует понижение, np :)
Учитывая, что вы используете Ember.js, как указано в комментарии, я предполагаю, что вы имеете в виду метод замены Ember.js. Он принимает три параметра: индекс, с которого начинается замена, количество элементов, которые следует удалить из массива, и, наконец, массив элементов, которые необходимо добавить в ваш массив.
Для получения дополнительной информации проверьте это.
Что вы подразумеваете под тремя параметрами, сигнатура функции замены это
str.replace(regexp|substr, newSubstr|function)