PROG_WAY_BLOG Telegram 233
Метод массива with

withещё один новый метод массива из спецификации ECMAScript 2023, который позволяет удобно решить одну крайне специфичную задачу — изменить массив и создать его копию.

Если разбирать сразу же на примере, то выглядит это следующим образом:

const nums = [1, 2, 3, 4]
const newNums = nums.with(1, 'string')

console.log(newNums) // [1, 'string', 3, 4]


Первым аргументом метод with принимает индекс, на котором будет произведена замена, а вторым — новое значение.

Аналогом подобного метода можно считать прямую замену элемента при обращении по его индексу, только метод with не мутирует исходный массив:

const nums = [1, 2, 3, 4]
nums[1] = 'string'

console.log(nums) // [1, 'string', 3, 4]


Чтобы обойти мутацию, нам необходимо создавать отдельно копию изначального массива, а это неудобно. Метод with автоматически создаст копию за нас, что может сыграть на руку, например, в чистом redux.

Честно сказать, не смог придумать невероятно удобных кейсов применения этого метода, кроме редакса. На собесе ответить хватит и ладно. Есть и есть, чего бубнеть то.

#web #theory
👍37🐳10🔥31🍌1



tgoop.com/prog_way_blog/233
Create:
Last Update:

Метод массива with

withещё один новый метод массива из спецификации ECMAScript 2023, который позволяет удобно решить одну крайне специфичную задачу — изменить массив и создать его копию.

Если разбирать сразу же на примере, то выглядит это следующим образом:

const nums = [1, 2, 3, 4]
const newNums = nums.with(1, 'string')

console.log(newNums) // [1, 'string', 3, 4]


Первым аргументом метод with принимает индекс, на котором будет произведена замена, а вторым — новое значение.

Аналогом подобного метода можно считать прямую замену элемента при обращении по его индексу, только метод with не мутирует исходный массив:

const nums = [1, 2, 3, 4]
nums[1] = 'string'

console.log(nums) // [1, 'string', 3, 4]


Чтобы обойти мутацию, нам необходимо создавать отдельно копию изначального массива, а это неудобно. Метод with автоматически создаст копию за нас, что может сыграть на руку, например, в чистом redux.

Честно сказать, не смог придумать невероятно удобных кейсов применения этого метода, кроме редакса. На собесе ответить хватит и ладно. Есть и есть, чего бубнеть то.

#web #theory

BY progway — программирование, IT


Share with your friend now:
tgoop.com/prog_way_blog/233

View MORE
Open in Telegram


Telegram News

Date: |

How to Create a Private or Public Channel on Telegram? It’s easy to create a Telegram channel via desktop app or mobile app (for Android and iOS): Hui said the time period and nature of some offences “overlapped” and thus their prison terms could be served concurrently. The judge ordered Ng to be jailed for a total of six years and six months. On June 7, Perekopsky met with Brazilian President Jair Bolsonaro, an avid user of the platform. According to the firm's VP, the main subject of the meeting was "freedom of expression." Telegram is a leading cloud-based instant messages platform. It became popular in recent years for its privacy, speed, voice and video quality, and other unmatched features over its main competitor Whatsapp.
from us


Telegram progway — программирование, IT
FROM American