您好,登錄后才能下訂單哦!
這篇文章主要講解了“map是不是es6中的方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“map是不是es6中的方法”吧!
map是es6中的方法;該方法可以對(duì)數(shù)組的每個(gè)元素調(diào)用指定的回調(diào)函數(shù),并且返回包含結(jié)果的數(shù)據(jù),返回結(jié)果是一個(gè)新的數(shù)組,語(yǔ)法為“數(shù)組對(duì)象.map(function 回調(diào)函數(shù)(數(shù)組元素的值,數(shù)組元素索引,數(shù)組對(duì)象));”。
本教程操作環(huán)境:windows10系統(tǒng)、ECMAScript 6.0版、Dell G3電腦。
map() 方法可以對(duì)數(shù)組的每個(gè)元素調(diào)用指定的回調(diào)函數(shù),并返回包含結(jié)果的數(shù)組。具體用法如下:
array.map(callbackfn[, thisArg]);
參數(shù)說(shuō)明:
array:必需參數(shù),一個(gè)數(shù)組對(duì)象。
callbackfn:必需參數(shù),最多可以接收三個(gè)參數(shù)的函數(shù)。對(duì)于數(shù)組中的每個(gè)元素,map() 方法都會(huì)調(diào)用 callbackfn 函數(shù)一次。
thisArg:可選參數(shù),callbackfn 函數(shù)中的 this 關(guān)鍵字可引用的對(duì)象。如果省略 thisArg,則 undefined 將用作 this 值。
map() 方法將返回一個(gè)新數(shù)組,其中每個(gè)元素均為關(guān)聯(lián)的原始數(shù)組元素的回調(diào)函數(shù)返回值。對(duì)于數(shù)組中的每個(gè)元素,map() 方法都會(huì)調(diào)用 callbackfn 函數(shù)一次(采用升序索引順序),并不會(huì)為數(shù)組中缺少的元素調(diào)用回調(diào)函數(shù)。
除了數(shù)組對(duì)象之外,map() 方法可由具有 length 屬性,且具有已按編制索引的屬性名的任何對(duì)象使用,如 Arguments 參數(shù)對(duì)象。
回調(diào)函數(shù)的語(yǔ)法如下:
function callbackfn (value, index, array);
用戶可以使用最多三個(gè)參數(shù)來(lái)聲明回調(diào)函數(shù)。回調(diào)函數(shù)的參數(shù)說(shuō)明如下:
value:數(shù)組元素的值。
index:數(shù)組元素的數(shù)字索引。
array:包含該元素的數(shù)組對(duì)象。
示例1
下面示例使用 map() 方法映射數(shù)組,把數(shù)組中每個(gè)元素的值平方,乘以 PI 值,把返回的圓的面積值作為新數(shù)組的元素值,最后返回這個(gè)新數(shù)組。
function f (radius) { var area = Math.PI * (radius * radius); return area.toFixed(0); } var a = [10,20,30]; var a1 = a.map(f); console.log(a1);
示例2
下面示例使用 map() 方法映射數(shù)組,把數(shù)組中每個(gè)元素的值除以一個(gè)閾值,然后返回這個(gè)新數(shù)組其中回調(diào)函數(shù)和閾值都以對(duì)象的屬性存在,通過(guò)這種方法演示如何在 map 中使用 thisArg 參數(shù)。
var obj = { val : 10, f : function (value) { return value % this.val; } } var a = [6,12,25,30]; var a1 = a.map(obj.f, obj); console.log(a1); //6,2,5,0
感謝各位的閱讀,以上就是“map是不是es6中的方法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)map是不是es6中的方法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。