JavaScript常見數組方法以及教你如何轉置矩陣

本篇文章給大家帶來了關于JavaScript的相關知識, 其中主要介紹了常見數組方法以及教你如何轉置矩陣的相關問題, 包括了創建與遍歷、棧和隊列、檢索方法等等, 希望對大家有幫助 。

JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

相關推薦:javascript教程
一、常見二維數組操作
創建與遍歷在前面的篇章中, 已經學習了一維數組的各種創建方式, 了解一維數組如何創建后, 二維數組的創建就非常的簡單了, 只需將數組元素設置為數組即可 。
JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

在創建完二維數組后, 如何遍歷二維數組中的元素, 對其進行操作呢?
    一維數組可以利用for、for…in或for…of(ES6提供)進行遍歷 。 二維數組只需在遍歷數組后, 再次遍歷數組的元素即可 。
另外, 在Web項目開發中, 還經常通過多維空數組添加元素的方式來創建多維數組 。 下面以添加二維空數組元素為例進行演示 。
JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

若要為二維數組元素(如arr[i][0])賦值, 首先要保證添加的元素(如arr[i])已經被創建為數組, 否則程序會報“Uncaught TypeError……”錯誤 。
注意
在創建多維數組時, 雖然JavaScript沒有限制數組的維數, 但是在實際應用中, 為了便于代碼閱讀、調試和維護, 推薦使用三維及以下的數組保存數據 。
【案例】二維數組轉置
二維數組的轉置指的是將二維數組橫向元素保存為縱向元素 。
JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

代碼實現思路:
    找規律:res[0][0] = arr[0][0]、res[0][1] = arr[1][0]、res[0][2] = arr[2][0] 。 得結論: res[i][j] = arr[j][i] 。 ②res數組長度=arr元素(如arr[0])的長度 。 ③res元素(如res[0])的長度=arr數組的長度 。 ④按照③和④完成res的創建與遍歷, 按②進行轉置 。
為了讓你們有成就感我就不貼代碼了, 有問題可以在評論區提出 。 其實矩陣完全可以存在數組里, 以后做矩陣轉置直接運行代碼就行了 。
二、常見數組方法
棧和隊列方法JavaScript中, 除了前面講解的添加與刪除數組元素的方式外, 還可以利用Array對象提供的方法, 模擬棧和隊列的操作 。
    在數組的末尾或開頭添加數組的新元素 。 在數組的末尾或開頭刪除數組元素 。

JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

    push()和unshift()方法的返回值是新數組的長度 。 pop()和shift()方法返回的是移出的數組元素 。
檢索方法在開發中, 若要檢測給定的值是否是數組, 或是查找指定的元素在數組中的位置 。
JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

表中除了Array.isArray()方法外, 其余方法默認都是從指定數組索引的位置開始檢索, 且檢索方式與運算符“===”相同, 即只有全等時才會返回比較成功的結果 。
includes()和Array.isArray()方法
JavaScript常見數組方法以及教你如何轉置矩陣

文章插圖

    includes()方法的第1個參數表示待查找的值 。 includes()方法的第2個參數用于指定在數組中查找的下標 。 設置為大于數組長度時, 數組不會被檢索, 直接返回false 。 設置為小于0的數時, 則檢索的索引位置等于數組長度加上指定的負數, 若結果仍是小于0的數, 則檢索整個數組 。
indexOf()方法
indexOf()用于在數組中從指定下標位置, 檢索到的第一個給定值, 存在則返回對應的元素下標, 否則返回-1 。
注意
indexOf()方法的第2個參數用于指定開始查找的下標:
    當其值大于或等于數組長度時, 直接返回-1 。 當其值為負數時, 則查找的下標位置等于數組長度加上指定的負數, 若結果仍是小于0的數, 則檢索整個數組 。
lastIndexOf()方法
Array對象提供的lastIndexOf()方法, 用于在數組中從指定下標位置檢索到的最后一個給定值的下標 。 與indexOf()檢索方式不同的是, lastIndexOf()方法默認逆向檢索, 即從數組的末尾向數組的開頭檢索 。
注意
lastIndexOf()方法的第2個參數用于指定查找的下標, 且由于其采用逆向的方式檢索:
當其值大于或等于數組長度時, 則整個數組都會被查找 。

推薦閱讀