欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript常見數(shù)組方法之如何轉(zhuǎn)置矩陣

 更新時間:2022年03月10日 09:17:08   作者:微風(fēng)洋洋  
這篇文章主要給大家介紹了關(guān)于JavaScript常見數(shù)組方法之如何轉(zhuǎn)置矩陣的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

今天這篇文章就是來和大家詳細(xì)聊聊JavaScript常見數(shù)組方法,不知道大家有沒有學(xué)過線性代數(shù)呢,如果學(xué)過那么矩陣轉(zhuǎn)置那可就太熟悉了。

今天我想試試能不能用數(shù)組來實現(xiàn)矩陣轉(zhuǎn)置呢?

想知道,那就接著往下看吧。希望大家讀完有所收獲,那我辛苦碼字也就值了。

一、常見二維數(shù)組操作

??創(chuàng)建與遍歷

在前面的篇章中,已經(jīng)學(xué)習(xí)了一維數(shù)組的各種創(chuàng)建方式,了解一維數(shù)組如何創(chuàng)建后,二維數(shù)組的創(chuàng)建就非常的簡單了,只需將數(shù)組元素設(shè)置為數(shù)組即可。

?? 在創(chuàng)建完二維數(shù)組后,如何遍歷二維數(shù)組中的元素,對其進(jìn)行操作呢?

  • 一維數(shù)組可以利用for、for…in或for…of(ES6提供)進(jìn)行遍歷。
  • 二維數(shù)組只需在遍歷數(shù)組后,再次遍歷數(shù)組的元素即可。

另外,在Web項目開發(fā)中,還經(jīng)常通過多維空數(shù)組添加元素的方式來創(chuàng)建多維數(shù)組。下面以添加二維空數(shù)組元素為例進(jìn)行演示。

若要為二維數(shù)組元素(如arr[i][0])賦值,首先要保證添加的元素(如arr[i])已經(jīng)被創(chuàng)建為數(shù)組,否則程序會報“Uncaught TypeError……”錯誤。

??注意

在創(chuàng)建多維數(shù)組時,雖然JavaScript沒有限制數(shù)組的維數(shù),但是在實際應(yīng)用中,為了便于代碼閱讀、調(diào)試和維護(hù),推薦使用三維及以下的數(shù)組保存數(shù)據(jù)。

??【案例】二維數(shù)組轉(zhuǎn)置

二維數(shù)組的轉(zhuǎn)置指的是將二維數(shù)組橫向元素保存為縱向元素。

代碼實現(xiàn)思路:

  • 找規(guī)律:res[0][0] = arr[0][0]、res[0][1] = arr[1][0]、res[0][2] = arr[2][0]。
  • 得結(jié)論: res[i][j] = arr[j][i]。②
  • res數(shù)組長度=arr元素(如arr[0])的長度。③
  • res元素(如res[0])的長度=arr數(shù)組的長度。④
  • 按照③和④完成res的創(chuàng)建與遍歷,按②進(jìn)行轉(zhuǎn)置。

為了讓你們有成就感我就不貼代碼了,有問題可以在評論區(qū)提出。其實矩陣完全可以存在數(shù)組里,以后做矩陣轉(zhuǎn)置直接運行代碼就行了。

二、常見數(shù)組方法

??棧和隊列方法

JavaScript中,除了前面講解的添加與刪除數(shù)組元素的方式外,還可以利用Array對象提供的方法,模擬棧和隊列的操作。

  • 在數(shù)組的末尾或開頭添加數(shù)組的新元素。
  • 在數(shù)組的末尾或開頭刪除數(shù)組元素。

  • push()和unshift()方法的返回值是新數(shù)組的長度。
  • pop()和shift()方法返回的是移出的數(shù)組元素。

??檢索方法

在開發(fā)中,若要檢測給定的值是否是數(shù)組,或是查找指定的元素在數(shù)組中的位置。

表中除了Array.isArray()方法外,其余方法默認(rèn)都是從指定數(shù)組索引的位置開始檢索,且檢索方式與運算符“===”相同,即只有全等時才會返回比較成功的結(jié)果。

?includes()和Array.isArray()方法

  • includes()方法的第1個參數(shù)表示待查找的值。
  • includes()方法的第2個參數(shù)用于指定在數(shù)組中查找的下標(biāo)。
  • 設(shè)置為大于數(shù)組長度時,數(shù)組不會被檢索,直接返回false。
  • 設(shè)置為小于0的數(shù)時,則檢索的索引位置等于數(shù)組長度加上指定的負(fù)數(shù),若結(jié)果仍是小于0的數(shù),則檢索整個數(shù)組。

?indexOf()方法

indexOf()用于在數(shù)組中從指定下標(biāo)位置,檢索到的第一個給定值,存在則返回對應(yīng)的元素下標(biāo),否則返回-1。

?? 注意

indexOf()方法的第2個參數(shù)用于指定開始查找的下標(biāo):

  • 當(dāng)其值大于或等于數(shù)組長度時,直接返回-1。
  • 當(dāng)其值為負(fù)數(shù)時,則查找的下標(biāo)位置等于數(shù)組長度加上指定的負(fù)數(shù),若結(jié)果仍是小于0的數(shù),則檢索整個數(shù)組。

?lastIndexOf()方法

Array對象提供的lastIndexOf()方法,用于在數(shù)組中從指定下標(biāo)位置檢索到的最后一個給定值的下標(biāo)。與indexOf()檢索方式不同的是,lastIndexOf()方法默認(rèn)逆向檢索,即從數(shù)組的末尾向數(shù)組的開頭檢索。

??注意

lastIndexOf()方法的第2個參數(shù)用于指定查找的下標(biāo),且由于其采用逆向的方式檢索:

當(dāng)其值大于或等于數(shù)組長度時,則整個數(shù)組都會被查找。

當(dāng)其值為負(fù)數(shù)時,則索引位置等于數(shù)組長度加上給定的負(fù)數(shù),若其值仍為負(fù)數(shù),則直接返回-1。

??數(shù)組轉(zhuǎn)字符串

開發(fā)中若需要將數(shù)組轉(zhuǎn)換為字符串時,則可以利用JavaScript提供的方法實現(xiàn)。

??join()和toString()方法的相同點:

  • 可將多維數(shù)組轉(zhuǎn)為字符串,默認(rèn)情況下使用逗號連接。
  • 當(dāng)數(shù)組元素為undefined、null或空數(shù)組時,對應(yīng)的元素會被轉(zhuǎn)換為空字符串

??join()和toString()方法的不同點:

  • join()方法可以指定連接數(shù)組元素的符號。

??其他方法

除了前面講解的幾種常用方法外,JavaScript還提供了很多其他常用的數(shù)組方法。例如,合并數(shù)組、數(shù)組淺拷貝、顛倒數(shù)組元素的順序等。

??注意

  • slice()和concat()方法在執(zhí)行后返回一個新的數(shù)組,不會對原數(shù)組產(chǎn)生影響,剩余的方法在執(zhí)行后皆會原數(shù)組產(chǎn)生影響。
  • splice()方法的第1個參數(shù)的值等于或大于數(shù)組長度時,從數(shù)組末尾開始操作;當(dāng)該值為負(fù)數(shù)時,則下標(biāo)位置等于數(shù)組長度加上指定的負(fù)數(shù),若其值仍為負(fù)數(shù),則從數(shù)組的開頭開始操作。

總結(jié)

到此這篇關(guān)于JavaScript常見數(shù)組方法之如何轉(zhuǎn)置矩陣的文章就介紹到這了,更多相關(guān)JavaScript數(shù)組轉(zhuǎn)置矩陣內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Js數(shù)組排序函數(shù)sort()介紹

    Js數(shù)組排序函數(shù)sort()介紹

    本文給大家簡單探討下Js數(shù)組排序函數(shù)sort()的用法和示例,有需要的小伙伴可以參考下。
    2015-06-06
  • JavaScript數(shù)據(jù)類型檢測實現(xiàn)方法詳解

    JavaScript數(shù)據(jù)類型檢測實現(xiàn)方法詳解

    Javascript中檢查數(shù)據(jù)類型一直是老生常談的問題,類型判斷在web開發(fā)中也有著非常廣泛的應(yīng)用,所以下面這篇文章主要給大家介紹了關(guān)于JS數(shù)據(jù)類型檢測的那些事,需要的朋友可以參考下
    2022-11-11
  • Three.js開發(fā)實現(xiàn)3D地圖的實踐過程總結(jié)

    Three.js開發(fā)實現(xiàn)3D地圖的實踐過程總結(jié)

    這篇文章主要給大家介紹了關(guān)于利用Three.js開發(fā)實現(xiàn)3D地圖的實踐過程,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用three.js具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • 基于JavaScript制作一個骰子游戲

    基于JavaScript制作一個骰子游戲

    這節(jié)實驗我們將使用?HTML、CSS?和?JavaScript?構(gòu)建一個骰子游戲。設(shè)置兩名玩家(一個人玩也行)然后擲骰子,獲得更高點數(shù)的玩家將贏得游戲,感興趣的可以了解一下
    2022-04-04
  • vue2.x的深入學(xué)習(xí)--關(guān)于h函數(shù)的說明

    vue2.x的深入學(xué)習(xí)--關(guān)于h函數(shù)的說明

    下面小編就為大家分享一篇基于h函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-08-08
  • JavaScript實現(xiàn)淘寶商品圖切換效果

    JavaScript實現(xiàn)淘寶商品圖切換效果

    這篇文章主要為大家詳細(xì)介紹了JavaScript實現(xiàn)淘寶商品圖切換效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Bootstrap基本組件學(xué)習(xí)筆記之進(jìn)度條(15)

    Bootstrap基本組件學(xué)習(xí)筆記之進(jìn)度條(15)

    這篇文章主要為大家詳細(xì)介紹了Bootstrap基本組件學(xué)習(xí)筆記之進(jìn)度條,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • js實現(xiàn)帶關(guān)閉按鈕始終顯示在網(wǎng)頁最底部工具條的方法

    js實現(xiàn)帶關(guān)閉按鈕始終顯示在網(wǎng)頁最底部工具條的方法

    這篇文章主要介紹了js實現(xiàn)帶關(guān)閉按鈕始終顯示在網(wǎng)頁最底部工具條的方法,是非常實用的javascript固定效果,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • js日期格式化yyyy-MM-dd問題

    js日期格式化yyyy-MM-dd問題

    這篇文章主要介紹了js日期格式化yyyy-MM-dd問題,具有很好的參考價值,希望對大家大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • JS前端圖片最優(yōu)化壓縮方案

    JS前端圖片最優(yōu)化壓縮方案

    這篇文章主要為大家介紹了JS前端圖片最優(yōu)化壓縮方案,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09

最新評論