Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
489 views
in Technique[技术] by (71.8m points)

javascript - Array map function doesn't change elements

In JavaScript, I have an array, which is

array = [true, false]

In some cases, I am trying to initialize this array

array.map(item => {
   item = false
})

After running the above code, the array is not changed, it is still [true, false], so is .map not reliable sometimes?


ONE MORE QUESTION: After running my below code, the array is changed. Why does it work in this case?

let array = [{id:1, checked: false}, {id:2, checked:true}]
array.map(item => {
    item.checked = true
})

array becomes [{id:1, checked: true}, {id:2, checked:true}]

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

JavaScript Array map() Method

*)creates a new array with the results of calling a function for every array element and it calls the provided function once for each element in an array, in order.

Note: map() Method does not execute the function for array elements without values and it does not change the original array.

more details


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...