How does `Array.from({length: 5}, (v, i) => i)` work?

后端 未结 4 1380
面向向阳花
面向向阳花 2020-12-24 12:48

I may be missing something obvious here but could someone breakdown step by step why Array.from({length: 5}, (v, i) => i) returns [0, 1, 2, 3, 4]

4条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2020-12-24 13:22

    The 2nd argument in the arrow function is always the index with Array.from() method 
        x=Array.from({length:5},(v,i,k)=>k)
    console.log(x)
    //Expected output Array(5) [ undefined, undefined, undefined, undefined, undefined ]
        x=Array.from({length:5},(v,i,k)=>v)
    console.log(x)
    //Expected output Array(5) [ undefined, undefined, undefined, undefined, undefined ]
        x=Array.from({length:5},(v,i,k)=>i)
    console.log(x)
    //Expected output Array(5) [ 0, 1, 2, 3, 4 ]
    x=Array.from({length:5},()=>[])
    //Expected Output Array(5) [ [], [], [], [], [] ]
    x=Array.from({length:5},()=>{})
    //Expected Output Array(5) [ undefined, undefined, undefined, undefined, undefined ]
    

提交回复
热议问题