1. 程式人生 > >js陣列方法大全(下)

js陣列方法大全(下)

# js陣列方法大全(下)

記錄一下整理的js陣列方法,免得每次要找方法都找不到。圖片有點多,注意流量,嘻嘻!

本期分享

  • forEach()
  • map()
  • filer()
  • every()
  • some()
  • reduce()
  • reduceRight()
  • indexOf()
  • lastIndex()

上期分享

  • join()
  • reverse()
  • sort()
  • concat()
  • slice()
  • splice()
  • push()
  • pop()
  • unshift()
  • shift()
  • toString()
  • toLocaleString()

forEach() --->遍歷

  • 使用熱度:經常用
  • 是否改變原始陣列:否
  • 返回:無
  • 引數:
引數位置 引數型別 是否必選 說明
1 function 三個引數分別是:陣列元素、元素的索引、陣列本身
  • 說明:該方法無法提前終止執行,如果要提前終止執行,只能使用try塊中,然後丟擲一個異常。
  • 小技巧:如果陣列是個陣列物件形式可以直接運算元組元素改變原始陣列本身,因為物件是個引用資料型別嘛!
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var sum =0;
data.forEach(value=>{
  sum+=value;
})
log(sum);

data.forEach((v,i,a)=>{
  a[i]=v+1;
})
log(data);

var data_post=[{a:1},{a:2}]
data_post.forEach(value=>{
  value.a++;
})
log(data_post)

map() --->對映

  • 使用熱度:經常用
  • 是否改變原始陣列:否
  • 返回:返回一個新函式
  • 引數:
引數位置 引數型別 是否必選 說明
1 function 三個引數分別是:陣列元素、元素的索引、陣列本身
  • 說明:傳遞給map函式應該有返回值,返回值是新陣列的元素。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b= data.map(x=>{
  return x*x;
})
log(b)

filter() --->過濾

  • 使用熱度:常用
  • 是否改變原始陣列:否
  • 返回:返回過濾後的陣列
  • 引數:
引數位置 引數型別 是否必選 說明
1 function 三個引數分別是:陣列元素、元素的索引、陣列本身
  • 說明:如果返回值是true或者可以轉化為true的值,那麼這個值就是新陣列的元素。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b= data.filter(x=>{
  return x<3;
})
log(b)

every() --->檢測

  • 使用熱度:不常用
  • 是否改變原始陣列:否
  • 返回:true或者false
  • 引數:
引數位置 引數型別 是否必選 說明
1 function 三個引數分別是:陣列元素、元素的索引、陣列本身
  • 說明:當且僅當針對陣列中的所有元素呼叫繫結函式都返回true時,它才返回true。
  • 注意:一旦every或者some已經確定了改返回什麼值得時候就不會遍歷陣列了。根據數學上的慣例,在空陣列呼叫時,every返回true,some返回false。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b= data.every(x=>{
  return x<10;
})
log(b)

var c= data.every(x=>{
  return x%2===0;
})
log(c)

some() --->檢測

  • 使用熱度:不常用
  • 是否改變原始陣列:否
  • 返回:true或者false
  • 引數:
引數位置 引數型別 是否必選 說明
1 function 三個引數分別是:陣列元素、元素的索引、陣列本身
  • 說明:當陣列中至少有一個元素呼叫繫結函式返回true時,它就返回true。
  • 注意:一旦every或者some已經確定了改返回什麼值得時候就不會遍歷陣列了。根據數學上的慣例,在空陣列呼叫時,every返回true,some返回false。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b= data.some(x=>{
  return x>10;
})
log(b)

var c= data.some(x=>{
  return x%2===0;
})
log(c)

reduce() --->簡化

  • 使用熱度:不常用
  • 是否改變原始陣列:否
  • 返回:返回一個值
  • 引數:
引數位置 引數型別 是否必選 作用
1 function 四個引數分別是:初始化值/陣列元素、陣列元素、元素的索引、陣列本身
2 number 供計算的初始化值
  • 說明:第一個引數是到目前為止的簡化操作累計的結果
  • 注意:如果沒有初始化值,第一次呼叫函式的第一個引數就是第一個陣列元素,第二個引數則是第二個陣列元素。如果有初始化值,第一次呼叫函式的第一個引數就是初始化值,二個引數則是第一個陣列元素。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b= data.reduce((x,y)=>{
  return x+y;
},0)
log(b)

var c= data.reduce((x,y)=>{
  return x*y;
},1)
log(c)

var d= data.reduce((x,y)=>{
  return x>y?x:y;
},1)
log(d)

reduceRight() --->簡化

  • 使用熱度:不常用
  • 是否改變原始陣列:否
  • 返回:返回一個值
  • 引數:
引數位置 引數型別 是否必選 作用
1 function 四個引數分別是:初始化值/陣列元素、陣列元素、元素的索引、陣列本身
2 number 供計算的初始化值
  • 說明:第一個引數是到目前為止的簡化操作累計的結果。不同於reduce這個僅僅是從右到左計算。
  • 注意:如果沒有初始化值,第一次呼叫函式的第一個引數就是第一個陣列元素,第二個引數則是第二個陣列元素。如果有初始化值,第一次呼叫函式的第一個引數就是初始化值,二個引數則是第一個陣列元素。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
data.reduceRight((x,y)=>{
  log(y)
  return x+y;
},0)

indexOf() --->搜尋

  • 使用熱度:經常用
  • 是否改變原始陣列:否
  • 返回:返回陣列索引或者-1
  • 引數:
引數位置 引數型別 是否必選 作用
1 * 要搜尋的陣列元素
2 number 從陣列哪個索引開始搜尋
  • 說明:如果能搜尋到結果將返回第一個索引,如果搜尋不到就返回-1
  • 注意:如果第二個引數是負數,指的是從陣列元素末尾的偏移量位置開始向後搜尋,而不是到偏移量位置就截止搜尋了,這裡是很容易和splice弄混的。
  • 例項如下:
var log=console.log;
var data=[1,2,3,4,5];
var b=data.indexOf(1,-5);
log(b);

lashIndexOf() --->搜尋

  • 使用熱度:經常用
  • 是否改變原始陣列:否
  • 返回:返回陣列索引或者-1
  • 引數:
引數位置 引數型別 是否必選 作用
1 * 要搜尋的陣列元素
2 number 從陣列哪個索引開始搜尋
  • 說明:和indexOf不同的是lashIndexOf是反向搜尋
  • 注意:因為是反向搜尋,當第二個引數是負數的時候,就是指從末尾偏移量的位置向前搜尋
  • 例項如下:
var log=console.log;
var data=[1,2,3,2,5];
var b=data.lastIndexOf(2,-3)
log(b)

var c=data.lastIndexOf(1,-5)
log(c)

相關推薦

js陣列方法大全

# js陣列方法大全(下) 記錄一下整理的js陣列方法,免得每次要找方法都找不到。圖片有點多,注意流量,嘻嘻! 本期分享 forEach() map() filer() every() some() reduce() reduceRight() indexOf() lastIndex() 上期分享

js陣列方法大全

# js陣列方法大全(上) 記錄一下整理的js陣列方法,免得每次要找方法都找不到。圖片有點多,注意流量,嘻嘻! 本期分享 join() reverse() sort() concat() slice() splice() push() pop() unshift() shift() toString()

js陣列操作大全pop,push,unshift,splice,shift方法

他們改變的都是原有的那個陣列的長度和內容,如果在外面定一個新元素接收他的變化,那麼這個元素只能是獲取到他處理之後的長度。 pop  最後刪除 var a = [1,2,3,4,5]; var b = a.pop();    //a:[1,2,3,4] b:5

JS常用屬性方法大全

1.輸出語句:document.write("");2.JS中的註釋為://3.傳統的HTML文件順序是:document->html->(head,body)4.一個瀏覽器視窗中的DOM順序是:window->(navigator,screen,histo

JS陣列方法整理附使用示例

整理目前所用過的陣列方法,學習了新增的es6方法。 1、arr.push() 從後面新增元素,返回值為新增完後的陣列的長度 let arr = [1,2, is 8、3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,

提高人體骨骼建模方法介紹

3D圖形繪制軟件 人體骨骼 建模 制作醫療插圖的時候,有個全面的人體3D骨骼模型會有很大的幫助,與傳統技術相比,擁有旋轉模型,從各個角度渲染模型的技能尤為重要,還節省了大量時間。通過隱藏或剪切單個肌肉、器官和血管,它還可以用作為很多插圖的基礎,本質上是創建了不同級別的解剖。 ZB

js遍歷物件、遍歷陣列js陣列方法大全、區分map()和forEach()以及filter()、區分for...in...和for...of...

1、給物件新增屬性:使用 object.prop 或object['prop']  給物件新增屬性 let obj={}; obj.name="zhangsan"; obj["age"]=23; obj["class"]="語文"; console.log(obj

xshell功能大全

本集接著同大家分享xshell功能的下集。看完本集xshell教程,大家就會對xshell能幹什麼就有了十分詳細的瞭解了。 具體的內容如下: 終端 圖1: xshell功能之終端設定 l  基於Unicode的終端緩衝區 l  VT100、 VT220、 VT32

php綜合複習題大全——提升篇

1)__autoload() :當程式例項化某個類,而該類沒有在當前檔案中被引入。此時會觸發執行__autoload()。程式希望通過該方法,自動引入這個類檔案。該方法有一個引數,即就是那個忘記引入的類的名稱。__autoload()方法的工作原理是什麼?當程式執行到例項化某個類的時候,如果在例項化前沒有引入

[Linux][入門系列]CentOS 的基礎使用-SSH安裝設定與使用大全-SSH的公祕鑰登入及免密登入設定

上一篇blog介紹了我們正常使用SSH進行連線的設定等操作。 SSH同時還支援使用公鑰和祕鑰的方式進行登入,本篇講著重介紹ssh的這項功能 什麼是公祕鑰? 先來一段百科的定義~ 公鑰(Public Key)與私鑰(Private Key)是通過一種演算法得到的一個金

JS常用屬性大全

21.彈出提示資訊:window.alert("字元");22.彈出確認框:window.confirm();23.彈出輸入提示框:window.prompt();24.指定當前顯示連結的位置:window.location.href="URL"25.取出窗體中的所有表單的數

js筆記:事件

1、阻止瀏覽器的預設行為     右鍵單擊瀏覽器,會彈出一個選單   拖拽文字   超連結 空連結--重新整理      submit按鈕 重新整理頁面   阻止瀏覽器的預設行為 :

getProperty方法大全轉載

System.out.println("java版本號:" + System.getProperty("java.version")); // java版本號 System.out.println("Java提供商名稱:" + System.getProperty("java.vendor"));

陣列方法實現————陣列方法join()

join()方法 定義和用法: join() 方法用於把陣列中的所有元素放入一個字串。 元素是通過指定的分隔符進行分隔的。 語法:arrayObject.join(separator) 引數

陣列方法實現————陣列方法reverse()

reverse()方法 定義:反轉陣列項的順序 語法: arr.reverse() 引數:/ 返回值:返回該陣列的引用。 程式碼如下: var arr1 = [1, 2, 3, 4, 5,

tcp短連線TIME_WAIT問題解決方法大全1——高屋建瓴

tcp連線是網路程式設計中最基礎的概念,基於不同的使用場景,我們一般區分為“長連線”和“短連線”,長短連線的優點和缺點這裡就不詳細展開了,有心的同學直接去google查詢,本文主要關注如何解決tcp短連

陣列方法實現————陣列方法indexOf()

indexOf()、lastIndexOf()方法 相同點: 都接收兩個引數————要查詢的項、要查詢起點位置是索引(可選) 不同點:查詢方式 indexOf():從陣列的開頭(位置0)向後查詢 lastIndexOf():從陣列末尾向前查詢 下面僅

tcp短連線TIME_WAIT問題解決方法大全3——tcp_tw_recycle

【tcp_tw_recycle和tcp_timestamps】參考官方文件(http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt),tcp_tw_recycle解釋如下:tcp_tw_recycle選項作用為:Enable fast

tcp短連線TIME_WAIT問題解決方法大全5——tcp_max_tw_buckets

參考官方文件(http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt),解釋如下:tcp_max_tw_buckets - I

tcp短連線TIME_WAIT問題解決方法大全2——SO_LINGER

SO_LINGER是一個socket選項,通過setsockopt API進行設定,使用起來比較簡單,但其實現機制比較複雜,且字面意思上比較難理解。 解釋最清楚的當屬《Unix網路程式設計卷1》中的說