成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專(zhuān)欄INFORMATION COLUMN

JavaScript中的map方法,以及一道js面試題

LittleLiByte / 2458人閱讀

摘要:今天看見(jiàn)一道面試題答案是多少答案是對(duì)方法不太了解就去搜了一下,里面也包含了對(duì)這道面試題的詳解。方法返回一個(gè)由原數(shù)組中的每個(gè)元素調(diào)用一個(gè)指定方法后返回值組成的新數(shù)組。使用方法處理數(shù)組時(shí),數(shù)組元素的范圍在方法第一次調(diào)用之前就已經(jīng)確定了。

今天看見(jiàn)一道面試題:["1","2","3"].map(parseInt)答案是多少?
答案是[1,NaN,NaN]

對(duì)map()方法不太了解就去搜了一下:Array.prototype.map(),里面也包含了對(duì)這道面試題的詳解。

map()方法返回一個(gè)由原數(shù)組中的每個(gè)元素調(diào)用一個(gè)指定方法后返回值組成的新數(shù)組。

語(yǔ)法
array.map(callback[,thisArg])

具體參數(shù)上面的鏈接中能看見(jiàn),也就不重復(fù)了。

描述

map 方法會(huì)給遠(yuǎn)數(shù)組中的每個(gè)元素都按順序調(diào)用一次 callbak 函數(shù)。 callback 每次執(zhí)行后的返回值(包括 undefined )組合起來(lái)形成一個(gè)新數(shù)組。 callback 函數(shù)只會(huì)在有值的索引上被調(diào)用,那些從來(lái)沒(méi)被賦過(guò)值或者使用 delete 刪除的索引則不會(huì)被調(diào)用。

callback 函數(shù)會(huì)被自動(dòng)傳入三個(gè)參數(shù):數(shù)組元素,元素索引,原數(shù)組本身。

如果 thisArg 參數(shù)有值,則每次 callback 函數(shù)被調(diào)用的時(shí)候, this 都會(huì)指向 thisArg 參數(shù)上的這個(gè)對(duì)象。若省略了 thisArg 參數(shù),或者賦值為 null 或 defined,則 this 指向全局對(duì)象。

map 不修改調(diào)用它的原數(shù)組本身(當(dāng)然可以在 callback 執(zhí)行時(shí)改變?cè)瓟?shù)組)。

使用 map 方法處理數(shù)組時(shí),數(shù)組元素的范圍在 callback 方法第一次調(diào)用之前就已經(jīng)確定了。在 map 方法執(zhí)行的過(guò)程中:原數(shù)組中增加的元素將不會(huì)被 callback 訪(fǎng)問(wèn)到;若已經(jīng)存在的元素被改變或者刪除,則它們的傳遞到 callback 的值是map 方法遍歷到它們的那一時(shí)刻的值;而被刪除的元素將不會(huì)訪(fǎng)問(wèn)到。

面試題

這個(gè)時(shí)候就很好理解為什么最后的返回值是[1,NaN,NaN]了,因?yàn)槭褂?b>parseInt時(shí),是可以傳遞兩個(gè)參數(shù)的,第一個(gè)參數(shù)是被解析的值,第二個(gè)參數(shù)是進(jìn)制數(shù)。map方法在調(diào)用callback函數(shù)時(shí),會(huì)給它傳遞三個(gè)參數(shù):當(dāng)前正在遍歷的元素,元素索引,原數(shù)組本身,第三個(gè)參數(shù)parseInt會(huì)忽視,但第二個(gè)參數(shù),會(huì)把傳遞過(guò)來(lái)的索引值當(dāng)做進(jìn)制數(shù)來(lái)使用。所以結(jié)果是這樣

如果想要得到正確的值,可以這樣:

function returnInt(element){
  return parseInt(element,10);
}

["1", "2", "3"].map(returnInt);
// 返回[1,2,3]

感覺(jué)這個(gè)函數(shù)和Array.prototype.forEach()有點(diǎn)像。。詳情Array.prototype.forEach()

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/80740.html

相關(guān)文章

  • 2017面試分享(js面試記錄)

    摘要:為了解決這些問(wèn)題,就可以使用定時(shí)器對(duì)函數(shù)進(jìn)行節(jié)流。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),它會(huì)清除前一次的定時(shí)器并設(shè)置另一個(gè)。如果前一個(gè)定時(shí)器已經(jīng)執(zhí)行過(guò)了,這個(gè)操作就沒(méi)有任何意義。然而,如果前一個(gè)定時(shí)器尚未執(zhí)行,其實(shí)就是將其替換為一個(gè)新的定時(shí)器。 2017面試分享(js面試題記錄) 1. 最簡(jiǎn)單的一道題 11 * 2 a8 * 3 2. 一道this的問(wèn)題 var num = 1...

    April 評(píng)論0 收藏0
  • 2017面試分享(js面試記錄)

    摘要:為了解決這些問(wèn)題,就可以使用定時(shí)器對(duì)函數(shù)進(jìn)行節(jié)流。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),它會(huì)清除前一次的定時(shí)器并設(shè)置另一個(gè)。如果前一個(gè)定時(shí)器已經(jīng)執(zhí)行過(guò)了,這個(gè)操作就沒(méi)有任何意義。然而,如果前一個(gè)定時(shí)器尚未執(zhí)行,其實(shí)就是將其替換為一個(gè)新的定時(shí)器。 2017面試分享(js面試題記錄) 1. 最簡(jiǎn)單的一道題 11 * 2 a8 * 3 2. 一道this的問(wèn)題 var num = 1...

    go4it 評(píng)論0 收藏0
  • 2017面試分享(js面試記錄)

    摘要:為了解決這些問(wèn)題,就可以使用定時(shí)器對(duì)函數(shù)進(jìn)行節(jié)流。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),它會(huì)清除前一次的定時(shí)器并設(shè)置另一個(gè)。如果前一個(gè)定時(shí)器已經(jīng)執(zhí)行過(guò)了,這個(gè)操作就沒(méi)有任何意義。然而,如果前一個(gè)定時(shí)器尚未執(zhí)行,其實(shí)就是將其替換為一個(gè)新的定時(shí)器。 2017面試分享(js面試題記錄) 1. 最簡(jiǎn)單的一道題 11 * 2 a8 * 3 2. 一道this的問(wèn)題 var num = 1...

    Aklman 評(píng)論0 收藏0
  • 2017、2018面試分享(js面試記錄)記得點(diǎn)贊分享哦;讓更多的人看到~~

    摘要:為了解決這些問(wèn)題,就可以使用定時(shí)器對(duì)函數(shù)進(jìn)行節(jié)流。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),它會(huì)清除前一次的定時(shí)器并設(shè)置另一個(gè)。如果前一個(gè)定時(shí)器已經(jīng)執(zhí)行過(guò)了,這個(gè)操作就沒(méi)有任何意義。然而,如果前一個(gè)定時(shí)器尚未執(zhí)行,其實(shí)就是將其替換為一個(gè)新的定時(shí)器。 2017面試分享(js面試題記錄) 1. 最簡(jiǎn)單的一道題 11 * 2 a8 * 3 var a = 2, b = 3; va...

    LiuRhoRamen 評(píng)論0 收藏0
  • 2017、2018面試分享(js面試記錄)記得點(diǎn)贊分享哦;讓更多的人看到~~

    摘要:為了解決這些問(wèn)題,就可以使用定時(shí)器對(duì)函數(shù)進(jìn)行節(jié)流。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),它會(huì)清除前一次的定時(shí)器并設(shè)置另一個(gè)。如果前一個(gè)定時(shí)器已經(jīng)執(zhí)行過(guò)了,這個(gè)操作就沒(méi)有任何意義。然而,如果前一個(gè)定時(shí)器尚未執(zhí)行,其實(shí)就是將其替換為一個(gè)新的定時(shí)器。 2017面試分享(js面試題記錄) 1. 最簡(jiǎn)單的一道題 11 * 2 a8 * 3 var a = 2, b = 3; va...

    testHs 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<