Array 數組

来源:https://www.cnblogs.com/kuikui/archive/2023/01/19/17061018.html
-Advertisement-
Play Games

概念 Array 數組是有序的元素序列。 語法 new Array(length) new Array(element1) new Array(element1, element2) new Array(element1, element2, element3) new Array(element1 ...


概念

Array 數組是有序的元素序列。

語法

new Array(length)
new Array(element1)
new Array(element1, element2)
new Array(element1, element2, element3)
new Array(element1, element2, element3, ... elementN)
[...]

參數

  • length 如果僅有一個參數並且是自然數時,創建指定長度的數組。
  • elementN 數組中的元素。

返回值

返回數組實例。

描述

數組的構造函數僅有一個參數的時候,如果這個參數是自然數時,則創建指定長度的數組。

數組的構造函數僅有一個參數的時候,並且參數值為負整數時,報語法錯誤,提示數組長度無效。

如果這個參數不是自然數時,則創建長度為1的數組,參數是數組中的元素。

數組的構造函數超過一個時,參數是數組中的元素,依次按插入順序排序。

使用數組的靜態方法Array.of創建實例,這個方法與構造函數不同的地方是參數作為數組的元素。

例子

例一、創建空數組。

let arr = new Array();
console.log(arr);  // []
// 等價於
let arr = new Array(0);
// 等價於
let arr = [];

例二、創建指定長度的數組。

let arr = new Array(5);
// [empty × 5]
// 等價於
let arr = [,,,,,];

例三、當元素不是自然數時,數組實例化。

let arr = new Array('前端咖');
console.log(arr);  // ['前端咖']
// 等價於
let arr = ['前端咖'];

例四、數組實例化設置初始值。

let arr = new Array(5, 5);
console.log(arr);  // [5, 5];
// 等價於
let arr = [5, 5];

例五、數組實例化設置初始值。

let arr = new Array('qian', 'duan', 'ka');
console.log(arr);  // ['qian', 'duan', 'ka'];
// 等價於
let arr = ['qian', 'duan', 'ka'];

例六、數組元素可以是任何值。

let arr = new Array();
arr.push(1);  // 插入是數值
arr.push('a');  // 插入字元串
arr.push(true);  // 插入布爾值
console.log(arr);  // [1, 'a', true]

例七、數組索引是按照自然數的順序,引索引值從零開始到數組長度減一。

let arr = new Array('qian', 'duan', 'ka');
console.log(arr);  // ['qian', 'duan', 'ka']
console.log(arr.length);  // 3

console.log(arr[0]);  // 'qian'
console.log(arr[1]);  // 'duan'
console.log(arr[2]);  // 'ka'

例八、修改指定索引的元素。

let arr = new Array('qian', 'duan', 'ka');
console.log(arr[0]);  // 'qian'
arr[0] = '前';
console.log(arr[0]);  // '前'

例九、數組索引是連續性,設置索引大於數組長度,中間用預設值undefined填充。

let arr = new Array('qian', 'duan', 'ka');
console.log(arr);  // ['qian', 'duan', 'ka'];
console.log(arr.length);  // 3
arr[10] = 'hao';
console.log(arr);  // ['qian', 'duan', 'ka', empty × 7, 'hao']
console.log(arr.length);  // 11

例十、數組長度設置。

let arr = new Array('qian', 'duan', 'ka', 'guan', 'wang');
console.log(arr);  // ['qian', 'duan', 'ka', 'guan', 'wang']
console.log(arr.length);  // 5
arr.length = 3;
console.log(arr);  // ['qian', 'duan', 'ka']
console.log(arr.length);  // 3

例十一、靜態方法Array.of創建數組。

let arr = Array.of(5);
console.log(arr);  // [5]
console.log(arr.length);  // 1

公眾號


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 2023-01-18 一、Spring中組件掃描 1、預設使用的情況 <context:component-scan base-package="com.hh"></context:component-scan> 2、包含掃描 註:使用包含掃描之前,必須設置use-default-filters=" ...
  • EntityFrameworkCore是微軟官網提供的ORM框架,是輕量化、可擴展、開源和跨平臺的數據訪問技術框架,但是在.Net 開發圈的評論卻褒貶不一。很多人認為EFCore 執行的效能比較差,很多複雜的查詢場景很難實現,也有很多人認為,EFCore 開發簡單,在中小型項目中,能夠快速的實現業務 ...
  • 運行環境:Window10,.Net7.0; 編者:烏龍哈里 2023-01-13 經常碰到兩個控制項需要相互傳遞消息,這時候需要用到事件。比如現有兩個類如下: class AA { private string Text = "AA"; public void SetText(string s) { ...
  • Cortex M 的中斷和優先順序, 首先要區分開 中斷 和 中斷優先順序 這是兩個不同的東西, 對於 Cortex-M0 和 Cortex-M0+ 內核, 除了系統內建中斷外, 支持最多 32 個中斷. 對於 Cortex-M3 內核, 除了 16 個內核中斷外, 支持最多 240 個中斷, 有8-b... ...
  • 分組數據 數據分組 分組允許把數據分為多個邏輯組,以便能對每個組進行聚集計算。 創建分組 分組是在SELECT語句的GROUP BY子句中建立的: SELECT vend_id, COUNT(*) AS num_prods FROM products GROUP BY vend_id; 註意: GR ...
  • 關於資料庫的性能優化其實是一個很複雜的大課題,很難通過一篇帖子講的很全面和深刻,這也就是為什麼我的標題是‘淺析’,程式員的成長一定是要付出代價和成本,因為只有真的在一線切身體會到當時的緊張和壓力,對於一件事情才能印象深刻,但反之也不能太過於強調代價,如果可以通過一些別人的分享就可以規避一些自己業務的... ...
  • 在 Vue 中,如果直接對數組進行操作,比如使用下標直接修改元素, Vue 是無法監測到這種變化的,導致無法觸發視圖更新。因此如何監測數組變化是值得關註的問題。 ...
  • 項目場景: 基於electron + Vue + node.js + express + mysql + evanpatchouli-mysql + Ant-Design-Vue,編寫一款屬於自己的輕量級MySQL資料庫界面工具。 問題列表 如何動態渲染高度自定義的Ant Design Table? ...
一周排行
    -Advertisement-
    Play Games
  • 1、預覽地址:http://139.155.137.144:9012 2、qq群:801913255 一、前言 隨著網路的發展,企業對於信息系統數據的保密工作愈發重視,不同身份、角色對於數據的訪問許可權都應該大相徑庭。 列如 1、不同登錄人員對一個數據列表的可見度是不一樣的,如數據列、數據行、數據按鈕 ...
  • 前言 上一篇文章寫瞭如何使用RabbitMQ做個簡單的發送郵件項目,然後評論也是比較多,也是準備去學習一下如何確保RabbitMQ的消息可靠性,但是由於時間原因,先來說說設計模式中的簡單工廠模式吧! 在瞭解簡單工廠模式之前,我們要知道C#是一款面向對象的高級程式語言。它有3大特性,封裝、繼承、多態。 ...
  • Nodify學習 一:介紹與使用 - 可樂_加冰 - 博客園 (cnblogs.com) Nodify學習 二:添加節點 - 可樂_加冰 - 博客園 (cnblogs.com) 介紹 Nodify是一個WPF基於節點的編輯器控制項,其中包含一系列節點、連接和連接器組件,旨在簡化構建基於節點的工具的過程 ...
  • 創建一個webapi項目做測試使用。 創建新控制器,搭建一個基礎框架,包括獲取當天日期、wiki的請求地址等 創建一個Http請求幫助類以及方法,用於獲取指定URL的信息 使用http請求訪問指定url,先運行一下,看看返回的內容。內容如圖右邊所示,實際上是一個Json數據。我們主要解析 大事記 部 ...
  • 最近在不少自媒體上看到有關.NET與C#的資訊與評價,感覺大家對.NET與C#還是不太瞭解,尤其是對2016年6月發佈的跨平臺.NET Core 1.0,更是知之甚少。在考慮一番之後,還是決定寫點東西總結一下,也回顧一下.NET的發展歷史。 首先,你沒看錯,.NET是跨平臺的,可以在Windows、 ...
  • Nodify學習 一:介紹與使用 - 可樂_加冰 - 博客園 (cnblogs.com) Nodify學習 二:添加節點 - 可樂_加冰 - 博客園 (cnblogs.com) 添加節點(nodes) 通過上一篇我們已經創建好了編輯器實例現在我們為編輯器添加一個節點 添加model和viewmode ...
  • 前言 資料庫併發,數據審計和軟刪除一直是數據持久化方面的經典問題。早些時候,這些工作需要手寫複雜的SQL或者通過存儲過程和觸發器實現。手寫複雜SQL對軟體可維護性構成了相當大的挑戰,隨著SQL字數的變多,用到的嵌套和複雜語法增加,可讀性和可維護性的難度是幾何級暴漲。因此如何在實現功能的同時控制這些S ...
  • 類型檢查和轉換:當你需要檢查對象是否為特定類型,並且希望在同一時間內將其轉換為那個類型時,模式匹配提供了一種更簡潔的方式來完成這一任務,避免了使用傳統的as和is操作符後還需要進行額外的null檢查。 複雜條件邏輯:在處理複雜的條件邏輯時,特別是涉及到多個條件和類型的情況下,使用模式匹配可以使代碼更 ...
  • 在日常開發中,我們經常需要和文件打交道,特別是桌面開發,有時候就會需要載入大批量的文件,而且可能還會存在部分文件缺失的情況,那麼如何才能快速的判斷文件是否存在呢?如果處理不當的,且文件數量比較多的時候,可能會造成卡頓等情況,進而影響程式的使用體驗。今天就以一個簡單的小例子,簡述兩種不同的判斷文件是否... ...
  • 前言 資料庫併發,數據審計和軟刪除一直是數據持久化方面的經典問題。早些時候,這些工作需要手寫複雜的SQL或者通過存儲過程和觸發器實現。手寫複雜SQL對軟體可維護性構成了相當大的挑戰,隨著SQL字數的變多,用到的嵌套和複雜語法增加,可讀性和可維護性的難度是幾何級暴漲。因此如何在實現功能的同時控制這些S ...