国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【JS】JavaScript數組以及數組API學習總結

roundstones / 1317人閱讀

摘要:返回數組內容的字符串表示形式將數組中每個元素轉為字符串,并用逗號連接。拍照連接符將數組中每個元素轉為字符串,用自定義的連接符連接每個元素需要用變量借助。

關于數組篇的記錄,純自己總結,會持續更新~

原生js方法
1:創建數組的幾種方法:
var arr = []; 

var arr = new Array();

var arr = [1,2];

var arr = new Array(1,2,3);

var arr = new Array(n); 

**注意:new Array定義數組,會根據參數個數不同代表數組不同內容
js中數組越界不報錯!而是返回undefined**

2:檢測是不是數組:
Array.isArray(arr) // 數組的API

arr instanceof Array      //通過構造函數

Array.prototype.isPrototypeOf(arr)    //通過原型

Object.prototype.toString.call(arr)  //[Object Array]
3:遍歷關聯數組(哈希hash數組)
for(var key in arr){
    arr[key] 當前屬性值
}
4:數組基礎API
arr.valueOf() // 返回值為該對象的原始值。

arr.toString() // 返回數組內容的字符串表示形式

String(arr) // 將數組中每個元素轉為字符串,并用逗號連接。——拍照

arr.join("連接符") //  將數組中每個元素轉為字符串,用自定義的"連接符"連接每個元素,需要用變量借助。

arr.reverse() // 將數組中元素的位置顛倒,并返回該數組,注意:原數組會改變

arr.sort() // 數組排序,按字符串大小排序,會改變原數組

arr.concat(otherArr) // 合并新元素,返回一個新數組需要用變量接住,不會改變原數組

arr.slice(start,end) // 剪切數組,含頭不含尾 ,返回新的數組,不會改變原數組

注意:拼接和截取: 都無法直接修改原數組而是返回新數組,用變量接住
arr.split([ 起始位置 | 要刪除元素的個數 | 要插入元素的值,可以寫入多個值 ] )剪切數組/替    換/新增

arr.indexOf(item) // 返回第一個匹配到的元素在數組中所在的位置 or -1

arr.lastIndexOf(item)
注意:IE6, 7, 8 不支持indexOf與lastIndexOf方法 
5:棧和隊列相關API
arr.push() //  尾部添加元素,返回被新數組的長度,原數組會改變

arr.pop()  // 尾部刪除元素,返回被刪除的元素,原數組會改變

arr.unshift(item)  // 頭部添加元素,返回新數組的長度,原數組會改變

arr.shift(item) //  頭部刪除元素,返回被刪除的元素,原數組會改變
6:ES5 API:

注意:ES5數組API這些都不會改變原數組,新的數組要用變量接住

參數:[ 調用every的數組的每一項元素 | 對應元素所在的位置 | 表示該數組 ]

arr.every(function(item,index,array){}) // 該函數對每一項都返回true,則返回true,否則返回false

arr.some(function(item,index,array){})  // 該函數對其中一項返回true,則返回true

arr.filter(callback) // 數組過濾,返回滿足條件的元素組成的一個新數組,

arr.map(callback) // 對數組每一項進行計算等處理,返回處理結果組成的數組,返回的是一個新數組

arr.reduce(fn) // ?前一個元素 | 當前元素,從1開始 | 后一個元素的序列,從1開始計數 | 表示該數組 ] _

var arr = [1,2,3,4,5];
var reduceArr = arr.reduce(function(pre,cur,index,array){
    return prev + cur;
})   //15
7:ES6 API
...[arr] 數組擴展運算符

Math.min(...[arr]) 等同于Math.min.apply(null,arr)  替換數組的apply方法

arr1.push(...arr2) 等同于Array.prototype.push.apply(arr1,arr2) 一個數組添加到另一個數組的尾部

[...arr1,...arr2,...arr3] 等同于arr1.concat(arr2,arr3)  合并數組

let[first,...const]=[1,2,3,4],結果first=1,const=[2,3,4] 結合解構一起使用

Array.from() 將類數組對象和可遍歷的對象轉換為真正的數組(包括ES6新增的數據結構Set和Map)

Array.from(“hello”)  [“h”,”e”,”l”,”l”,”o”]
let person={
    0:"張三",
    1:"李四",
    2:"王五",
    length:3 //必須要設置對象長度
};
let arr=Array.from(person); //等同于let arr=[].slice.call(person);

Array.of(1,2,3) [1,3,4] 將一組值轉換為數組

Array()會因參數個數導致行為有差異

Array.find(function(val,index,arr))
找到第一個符合條件的數組成員Array.findIndex(function(val,index,arr)) 找到第一個符合條件的數組位置
這兩個方法都可以發現NaN,彌補了數組的IndexOf方法的不足。

 arr.includes(value,[start]) 可以找到NaN

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/90460.html

相關文章

  • JS程序

    摘要:設計模式是以面向對象編程為基礎的,的面向對象編程和傳統的的面向對象編程有些差別,這讓我一開始接觸的時候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續了解設計模式必須要先搞懂面向對象編程,否則只會讓你自己更痛苦。 JavaScript 中的構造函數 學習總結。知識只有分享才有存在的意義。 是時候替換你的 for 循環大法了~ 《小分享》JavaScript中數組的那些迭代方法~ ...

    melody_lql 評論0 收藏0
  • JavasScript重難點知識

    摘要:忍者級別的函數操作對于什么是匿名函數,這里就不做過多介紹了。我們需要知道的是,對于而言,匿名函數是一個很重要且具有邏輯性的特性。通常,匿名函數的使用情況是創建一個供以后使用的函數。 JS 中的遞歸 遞歸, 遞歸基礎, 斐波那契數列, 使用遞歸方式深拷貝, 自定義事件添加 這一次,徹底弄懂 JavaScript 執行機制 本文的目的就是要保證你徹底弄懂javascript的執行機制,如果...

    forsigner 評論0 收藏0
  • 前端開發周報: CSS 布局方式與JavaScript數據結構和算法

    摘要:如果沒有學習過計算機科學的程序員,當我們在處理一些問題時,比較熟悉的數據結構就是數組,數組無疑是一個很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見 CSS 布局方式詳見: 一些常見的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...

    huhud 評論0 收藏0
  • 前端開發周報: CSS 布局方式與JavaScript數據結構和算法

    摘要:如果沒有學習過計算機科學的程序員,當我們在處理一些問題時,比較熟悉的數據結構就是數組,數組無疑是一個很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見 CSS 布局方式詳見: 一些常見的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...

    ?xiaoxiao, 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<