Javascript array fill () — это встроенный метод, который заполняет все элементы массива от начального до конечного индекса статическим или заданным значением. Конечный индекс не включен.
Метод fill () заполняет все элементы массива статическим значением. Мы также можем указать индекс для начала и окончания fill (). По умолчанию он изменяет весь массив. Это означает, что если мы не предоставим начальный и конечный индекс, он заменит все значения предоставленными значениями.
Итак, если мы предоставим значение, допустим, четыре, тогда все элементы массива станут четырьмя.
- Javascript array fill ()
- массив. fill (значение, начало, конец) Значения параметров Параметр Описание значение Обязательный параметр. Значение для заполнения массива. start Необязательный параметр. Индекс для начала заполнения массива (индекс по умолчанию 0) end Необязательный параметр. Индекс прекращения заполнения массива (по умолчанию array.length ) Теперь давайте рассмотрим пример. Создайте папку проекта и внутри нее один файл с именем app.js и добавьте в него следующий код. //app.jslet fillData = [1, 2, 3] .fill (4, 0, 1); console.log (fillData); Вывод Значит, , он заменил значение индексов 0 значением 4. Теперь, если вы не укажете начальный и конечный индексы, он заменит весь массив указанным значением. //app.jslet fillData = [1, 2, 3] .fill (4); console.log (fillData); Вывод Только первый метод Javascript Array fill () аргумент обязателен. Оба других аргумента являются необязательными. Если значение start отрицательно, оно обрабатывается как length_start, где length — длина массива. Если конец отрицательный, он обрабатывается как длина + конец. //app.jslet fillData = [1, 2, 3]. fill (4, -3, -2); console.log (fillData); Вывод Если начало больше, чем длина массива, то оно не изменит никакого значения. //app.jslet fillData = [1, 2, 3] .fill (4, 3, 5); console.log (fillData); Вывод Если начальный и конечный номер не является числом или NaN, тогда он не будет изменять массив. //app.jslet fillData = [1, 2, 3] .fill (4, NaN, NaN); console. log (fillData); Вывод Array.prototype.fill () Polyfill Если метод fill () не поддерживается браузеры, то вы можете написать следующий код, чтобы добавить в свой код и заставить его работать. if (! Array.prototype.fill) {Object.defineProperty (Array.prototype, 'fill', {значение: функция (значение) { //Шаги 1-2. if (this == null) {выбросить новую ошибку TypeError ('это null или не определено'); } var O = объект (это); //Шаги 3-5. var len = O.length >>> 0; //Шаги 6-7. var start = arguments [1]; var relativeStart = начало >> 0; //Шаг 8. var k = relativeStart > 0; //Шаг 11. var final = relativeEnd Наконец, пример с массивом Javascript fill () завершен.
- Значения параметров
- Вывод
- Вывод
- Вывод
- Вывод
- Вывод
- Array.prototype.fill () Polyfill
Javascript array fill ()
Метод fill () массива Javascript принимает до трех аргументов: значение, начало и конец. Аргументы начала и конца необязательны. У них есть значения по умолчанию 0 и длина этого объекта. Эти начальные и конечные значения являются индексами массива.
Метод fill () — это изменяемый метод, то есть изменяет массив и не возвращает новый массив, как метод concat (). Он изменит сам этот объект и вернет его, а не просто вернет его копию.
Когда fill () получит объект, он скопирует ссылку и заполнит массив ссылками на него. объект.
массив. fill (значение, начало, конец)
Значения параметров
Параметр | Описание |
---|---|
значение | Обязательный параметр. Значение для заполнения массива. |
start | Необязательный параметр. Индекс для начала заполнения массива (индекс по умолчанию 0) |
end | Необязательный параметр. Индекс прекращения заполнения массива (по умолчанию array.length ) |
Теперь давайте рассмотрим пример. Создайте папку проекта и внутри нее один файл с именем app.js и добавьте в него следующий код.
//app.jslet fillData = [1, 2, 3] .fill (4, 0, 1); console.log (fillData);
Вывод
Значит, , он заменил значение индексов 0 значением 4.
Теперь, если вы не укажете начальный и конечный индексы, он заменит весь массив указанным значением.
//app.jslet fillData = [1, 2, 3] .fill (4); console.log (fillData);
Вывод
Только первый метод Javascript Array fill () аргумент обязателен. Оба других аргумента являются необязательными.
Если значение start отрицательно, оно обрабатывается как length_start, где length — длина массива. Если конец отрицательный, он обрабатывается как длина + конец.
//app.jslet fillData = [1, 2, 3]. fill (4, -3, -2); console.log (fillData);
Вывод
Если начало больше, чем длина массива, то оно не изменит никакого значения.
//app.jslet fillData = [1, 2, 3] .fill (4, 3, 5); console.log (fillData);
Вывод
Если начальный и конечный номер не является числом или NaN, тогда он не будет изменять массив.
//app.jslet fillData = [1, 2, 3] .fill (4, NaN, NaN); console. log (fillData);
Вывод
Array.prototype.fill () Polyfill
Если метод fill () не поддерживается браузеры, то вы можете написать следующий код, чтобы добавить в свой код и заставить его работать.
if (! Array.prototype.fill) {Object.defineProperty (Array.prototype, 'fill', {значение: функция (значение) { //Шаги 1-2. if (this == null) {выбросить новую ошибку TypeError ('это null или не определено'); } var O = объект (это); //Шаги 3-5. var len = O.length >>> 0; //Шаги 6-7. var start = arguments [1]; var relativeStart = начало >> 0; //Шаг 8. var k = relativeStart > 0; //Шаг 11. var final = relativeEndНаконец, пример с массивом Javascript fill () завершен.