分享數組概念、創建、賦值、長度與使用

来源:https://www.cnblogs.com/dhnblog/archive/2020/04/14/12701679.html
-Advertisement-
Play Games

3-1什麼是數組?變數用來存儲數據,一個變數只能存儲一個內容,如果要存儲多個數據怎麼辦?此時就需要用到數組,數組是一個值的集合,每個值都有一個索引號,從0開始,每個索引都有一個相應的值,根據需要添加更多數值。 1 <script type="text/javascript"> 2 var myarr ...


3-1什麼是數組?變數用來存儲數據,一個變數只能存儲一個內容,如果要存儲多個數據怎麼辦?此時就需要用到數組,數組是一個值的集合,每個值都有一個索引號,從0開始,每個索引都有一個相應的值,根據需要添加更多數值。

1 <script type="text/javascript">
2  var myarr=new Array(); //定義數組
3  myarr[0]=80; 
4  myarr[1]=60;
5  myarr[2]=99;
6  document.write("第一個人的成績是:"+myarr[0]);
7  document.write("第二個人的成績是:"+myarr[1]);
8  document.write("第三個人的成績是:"+myarr[2]);
9 </script>

3-2如何創建數組?使用數組之前首先要創建,而且需要把數組本身賦至一個變數;

var myarray=new Array();//創建數組的語法

我們創建數組的同時,還可以為數組指定長度,長度可任意指定;

1 var myarray= new Array(8); //創建數組,存儲8個數據。 
1 <script type="text/JavaScript">
2  document.write("數組的第一個值:"+myarr[0]);
3 </script>

1.創建的新數組是空數組,沒有值,如輸出,則顯示undefined。
2.雖然創建數組時,指定了長度,但實際上數組都是變長的,也就是說即使指定了長度為8,仍然可以將元素存儲在規定長度以外。


3-3數組賦值:數組創建好,接下來我們為數組賦值。

1 第一步:創建數組var myarr=new Array(); 
2 第二步:給數組賦值
3         myarr[1]=" 張三";
4         myarr[2]=" 李四";

如上為數組的表達方式,下麵創建一個數組,用於存儲5個人的數學成績。

1 var myarray=new Array(); //創建一個新的空數組
2 myarray[0]=66; //存儲第1個人的成績
3 myarray[1]=80; //存儲第2個人的成績
4 myarray[2]=90; //存儲第3個人的成績
5 myarray[3]=77; //存儲第4個人的成績
6 myarray[4]=59; //存儲第5個人的成績

註意:數組每個值有一個索引號,從0開始。/我們還可以用簡單的方法創建上面的數組和賦值;

第一種方法:

1 var myarray = new Array(66,80,90,77,59);//創建數組同時賦值

 

 第二種方法:

1  var myarray = [66,80,90,77,59];//直接輸入一個數組(稱 “字面量數組”)

註意:數組存儲的數據可以是任何類型(數字、字元、布爾值等)

1 <script language="javascript">
2     var myarr=new Array(3);
3     myarr[0]=88;
4     myarr[1]=90;
5     myarr[2]=68;
6   document.write("數組第一個值是:"+myarr[0]+"<br>");
7   document.write("數組第二個值是:"+myarr[1]+"<br>");
8   document.write("數組第三個值是:"+myarr[2]+"<br>");
9 </script>

 

3-4向數組增加一個新元素:之前使用myarray變數存儲了5個人的成績,現在多出一個人的成績,如何存儲呢?只需使用下一個未用的索引,任何時刻可以不斷向數組增加新元素。

1 myarray[5]=88; //使用一個新索引,為數組增加一個新元素
 1 <script language="javascript">
 2  var myarray=new Array();
 3  myarray[0]=88;
 4  myarray[1]=90;
 5  myarray[2]=68;
 6  myarray[3]=99;
 7  document.write("數組第一個值是:"+myarray[0]+"<br>");
 8  document.write("數組第二個值是:"+myarray[1]+"<br>");
 9  document.write("數組第三個值是:"+myarray[2]+"<br>");
10  document.write("數組第四個值是:"+myarray[3]+"<br>");
11 </script>

3-5使用數組元素:數組中的每個值有一個索引號,從0開始, myarray變數存儲6個人的成績,如下圖:

1 要得到一個數組元素的值,只需引用數組變數並提供一個索引,如:
2 第一個人的成績表示方法:myarray[0]
3 第三個人的成績表示方法: myarray[2]
1 <script language="javascript">
2  var myarr=new Array();
3  myarr[0]="小紅";
4  myarr[1]="第二個人的姓名是"
5  myarr[2]="小亮";
6  myarr[3]="小川";
7  document.write("第二人的姓名是:"+ myarr[1]);
8 </script>

3-6數組屬性length:如果我們想知道數組的大小,只需引用數組的一個屬性length。Length屬性表示數組的長度,即數組中元素的個數。

myarray.length; //獲得數組myarray的長度

註意:因為數組的索引總是由0開始,所以一個數組的上下限分別是:0和length-1。如數組的長度是5,數組的上下限分別是0和4。

1 var arr=[55,32,5,90,60,98,76,54];//包含8個數值的數組arr 
2 document.write(arr.length); //顯示數組長度8
3 document.write(arr[7]); //顯示第8個元素的值54

JavaScript數組的length屬性是可變的,這一點需要特別註意

1 arr.length=10; //增大數組的長度
2 document.write(arr.length); //數組長度已經變為10

數組隨元素的增加,長度也會改變,如下:

1 var arr=[98,76,54,56,76]; // 包含5個數值的數組
2 document.write(arr.length); //顯示數組的長度5
3 arr[15]=34;  //增加元素,使用索引為15,賦值為34
4 alert(arr.length); //顯示數組的長度16
1 <script language="javascript">
2  var mynum=new Array(65,90,88,98);
3  document.write("數組的長度是:"+ mynum.length);
4 </script>

3-7二維數組/一維數組,我們看成一組盒子,每個盒子只能放一個內容

1 一維數組的表示: myarray[ ]

二維數組,我們看成一組盒子,不過每個盒子里還可以放多個盒子。

1 二維數組的表示: myarray[ ][ ]

二維數組的兩個維度的索引值也是從0開始,兩個維度的最後一個索引值為長度-1。 

 二維數組的定義方法一

1 var myarr=new Array();  //先聲明一維 
2 for(var i=0;i<2;i++){   //一維長度為2
3    myarr[i]=new Array();  //再聲明二維 
4    for(var j=0;j<3;j++){   //二維長度為3
5    myarr[i][j]=i+j;   // 賦值,每個數組元素的值為i+j
6    }
7  }

將上面二維數組,用表格的方式表示:

 二維數組的定義方法二,在賦值中,myarr[0][1] ,0 表示表的行,1表示表的列。

1 var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3]]
myarr[0][1]=5; //將5的值傳入到數組中,覆蓋原有值。//賦值

測試:使用Javascript語言,把以下數組 var  arr = ['*','##',"***","&&","****","##*"];arr[7] = "**";在頁面顯示圖案:

第一步:定義一個數組,存儲要展示的圖形。提示:var arr = ['*','##',"***","&&","****","##*"]; arr[7] = "**";
第二步:預想一下arr 數組的長度是多少? 提示: 使用alert彈出數組的長度,看看是否跟自己的答案一樣。
第三步:將數組內容輸出,完成達到的效果。

 1 <script type="text/javascript">
 2  //創建數組
 3  var  arr = ['*','##',"***","&&","****","##*"];
 4   arr[7] = "**";
 5  //顯示數組長度
 6  alert(arr.length);
 7  //將數組內容輸出,完成達到的效果。
 8 document.write(arr[0]+'<br />');
 9 document.write(arr[1]的值是:+'<br />');
10 document.write(arr[2]的值是:+'<br />');
11 document.write(arr[3]的值是:+'<br />');
12 document.write(arr[4]的值是:+'<br />');
13 document.write(arr[5]的值是:+'<br />');
14 document.write(arr[6]的值是:+'<br />');
15 document.write(arr[8]的值是:+'<br />');
16 </script>

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

-Advertisement-
Play Games
更多相關文章
  • 一、啟動mongo shell 安裝好MongoDB後,直接在命令行終端執行下麵的命令: mongo 如下圖所示: 可選參數如下: 也可以簡寫為: 在mongo shell中使用外部編輯器,如:vi,只需設置環境變數: export EDITOR=vi 啟動mongo shel即可。下麵我們在mon ...
  • 老孟導讀:沒有接觸過音樂字幕方面知識的話,會對字幕的實現比較迷茫,什麼時候轉到下一句?看了這篇文章,你就會明白字幕so easy。 先來一張效果圖: 字幕格式 目前市面上有很多種字幕格式,比如srt, ssa, ass(文本形式)和idx+sub(圖形格式),但不管哪一種格式都會包含2個屬性:時間戳 ...
  • 用Moor做TODO app: * 基本使用: 依賴添加, 資料庫和表的建立, 對錶的基本操作. * 問題解決: 插入數據註意類型; 多個表的文件組織. * 常用功能: 外鍵和join, 資料庫升級, 條件查詢. ...
  • 引言 在我們學習編程之初,就學習過變數的賦值操作,同時也學習了將一個變數的值賦值給另外一個變數。對於交換兩個變數的值,很多童鞋都有解決方案。然鵝,對於面試官提出的不藉助第三變數來交換兩個變數的值,你能想到幾種解決方案呢? 如果你只知道一種方案,請你認真看下去... 如果你知道兩種方案,那麼你可以來了 ...
  • 前幾篇都是長篇大論,一次看完的確有些費盡,今天簡單些,分享一個開發中使用attr() 的技巧,可能大家都沒有這樣使用過。它配合ES6標準中模板字元串模塊使用。簡單看下模板字元串它的使用: // 傳統的 JavaScript 語言,輸出模板通常是這樣寫的(下麵使用了 jQuery 的方法)。 $('# ...
  • 首先是安裝 在index.js中引入樣式 跟著官網點組件 import React,{Component} from 'react'; import { Button } from 'antd'; class Counter extends Component{ render(){ console. ...
  • 生命周期函數指的是組件在某一時刻會自動執行的函數 constructor可以看成一個類的普通生命周期函數,但不是react獨有的生命周期函數 render() 是數據發生變化時會自動執行的函數,因此屬於react的生命周期函數 mounting只在第一次渲染時會執行 import React,{Co ...
  • 目錄 為什麼分析asap asap概述 asap源碼解析—Node版 參考 1.為什麼分析asap 在之前的文章 "async和await是如何實現非同步編程?" 中的 “淺談Promise如何實現非同步執行” 小節,提到了 Promise 非同步執行是通過 "asap" 這個庫來實現的。所以為了進一步深 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...