Автор оригинала: Robert Wozniak.
В этом посте в блоге я хотел поговорить о конкретном методе, который можно использовать с массивами. Этот метод имеет действительно специфические случаи использования.
Я буду честен с тобой, у меня не было возможности использовать его раньше. Мне не пришлось даже в моих личных проектах. Давайте прыгнем сразу в него.
1. array.fill ()
1.1 Что это делает?
Основная цель метода состоит в том, чтобы заполнить массив статическими значениями из прилагаемого индекса запуска до конечного индекса.
1.2 Синтаксис и параметры
Array(1).fill(value, startIndex, endIndex);
Теперь позвольте мне объяснить синтаксис. Как вы можете видеть выше, первый параметр – это статическое значение, которое будет использоваться для заполнения вашего массива. Второй параметр позволяет указывать, первое место в вашем массиве, в котором будет применяться значение.
Помните, что если параметр startindex не был указан, он будет использовать 0 в качестве значения по умолчанию. Третий параметр и последний, позволяющий предоставить место в массиве, где принесенное значение закончится. Если не указано, он применяет длину вашего массива в качестве значения по умолчанию, что означает применение до самого конца.
1.3 Использовать случаи и использование синтаксиса
В JavaScript мы имеем решение, которое позволяет нам выделить некоторое пространство в памяти для определенного количества предметов в массиве, что означает инициализацию коллекции с элементами внутри, сообщает память – хорошо, я хочу, чтобы это много индексов и Хотите, чтобы вы забронировали память для этого количества предметов.
Мы выделяем память на двенадцать индексов в массиве для дальнейшего использования.
const array = Array(12);
Что будет результатом вышеуказанной декларации? Да, у нас будет двенадцать ящиков в память, содержащую значение undefined. Имейте смысл, потому что мы не объявили ничего, как ценность каждого.
Теперь, чтобы не иметь 12 пустых полей в нашем массиве, давайте заполним его значениями.
Array(12).fill(0); // [0, 0, 0, 0, 0 ....];
Начиная с кодом, иллюстрирует, как заполнить все наши 12 пустых полей за Zeros. Подождите, мы можем наполнить его только одним номером, и это так?
Нах, не беспокойтесь об этом, вы можете делать все, что вы хотите с этим. Я собираюсь показать вам пару примеров, а также, я собираюсь донести к нему напечатанные массивы в JS. Почему я делаю это? Поскольку вы действительно можете использовать метод Fill () на печатных массивах, что действительно круто.
Этот пример собирается показать вам, как заполнить массив с последовательностью чисел с начала до конца.
function fillSequence(start, end) { return Array(start – end + 1).fill().map((item, index) => item + index); } fillSequence(15, 60); // [15...60];
Существует также разное решение, тем короче для достижения вышеуказанного результата.
const fillSequence = (start, end) => [...Array(end – start + 1)].map((item, index) => item + index); fillSequence(15, 60); // [15 … 60]
Отлично, поэтому у нас было покрыто. Эти два примера, показывают, что вы можете использовать метод заполнения (). Есть много других примеров использования – определенно. Но я показал вам те те, потому что я чувствовал, что вы можете обнаружить, что это круто, как я.
Ну, это не конец. Вы сказали выше, что я собираюсь показать вам Fill () метод с напечатанными массивами, давайте сделаем это.
Какие напечатанные массивы? Я не собираюсь объяснять это здесь, потому что ему нужен отдельный блог. Я размещаю ссылку, где вы можете прочитать больше об этом:
MDN – напечатанные массивы
Использование заполнения () на печатных массивах:
const typedArray = new Uint8Array([0, 0, 0, 0]); const typedArray2 = new Uint8Array(16); typedArray.fill(16); // [16, 16, 16, 16]; typedArray2.fill(10); // [10] x 16;
Это было бы о методе Array.fill (), я надеюсь, что он дал вам понимание того, что это такое и как его использовать.
Если у вас есть какие-либо другие идеи о том, как реализовать метод Array.fill (), дайте мне знать в комментариях ниже. Спасибо за прочтение.