JavaScript學習筆記——文法基礎1.2

來源:互聯網
上載者:User

標籤:

一、數組

1、通常情況下,一個變數只能有一個值,若想擁有多個值,就需要使用數組,換句話來說,數組是一個特殊的容器,它可以根據需求存放一個或者多個值。
2、數組可以用關鍵字Array來聲明,聲明的同時,可以設定它的長度length。

var myArray = Array(3);document.write(myArray.length); //輸出3

3、我們可以在聲明數組的同時對它進行填充,也可以在聲明之後進行填充,當然,我們需要對新填充的值指定存放位置,需要注意下標是從0開始計數的。

JavaScript(1)var myBooks = Array("JavaScript ","canvas");document.write(myBooks+‘<br/>‘); //輸出JavaScript canvas 並換行document.write(myBooks[0]+‘<br/>‘);//輸出JavaScript 並換行var myArray = Array();myArray[0] = "筱雨生";document.write(myArray); //輸出筱雨生

4、還有一種不需要通過Array關鍵字來建立數組的方式

var myArray = [‘Marry‘,24,true];alert(typeof(myArray)); //objectalert(typeof(myArray[0])); //stringalert(typeof(myArray[1])); //numberalert(typeof(myArray[2])); //booleandocument.write(myArray[0]); //輸出Marry

5、下面還有一種比較特殊的建立方法,它的下標不是數字,而是String

var iMac = Array();iMac[‘Name‘] = ‘Jobs‘;iMac[‘year‘] = 1955;iMac[‘living‘] = false;console.log(iMac); //[Name: "Jobs", year: 1955, living: false]

沒錯,這種方法的可讀性較強,但是它並不是一個Good Habit。

 

二、對象

1、對象與數組比較相似,也是用一個變數來表示一組值,JavaScript對象通常是用關鍵字Object來聲明的。

var myObj = Object();myObj.name = "Tatsuya";myObj.year = 1990;alert(typeof(myObj)); //輸出Object

2、建立對象的方式不是唯一的,下面這個方法更加高效,即花括弧文法:{ propertyName:value, propertyName:value }

var myObj = { name:"Tatsuya", year:1990};alert(typeof(myObj)); //輸出Object

由上面的兩個例子,我們可以發現對象與數組之間的微妙關係,這種微妙關係具體怎麼去描述呢,有待我們去驗證。

3、對象中的屬性與變數的命名規則有相同之處,屬性值可以是任何JavaScript值,包括其他對象。

var myObj = {};myObj.name = ‘Tatsuya‘;myObj.book = [];myObj.year = 1900;myObj.childObj = {};console.log(typeof(myObj)); //objectconsole.log(typeof(myObj.name)); //stringconsole.log(typeof(myObj.book)); //objectconsole.log(typeof(myObj.year)); //numberconsole.log(typeof(myObj.childObj)); //object

4、到現在,我們可以瞭解到,數組可以放入對象裡,對象還可以放入對象裡,其實,對象也可以放入到數組中,下面我們做進一步的驗證。

var myObj = {    name:"Tatsuya",    year:1990,    living:true    }alert(typeof(myObj)); //輸出Objectvar myArray = Array();myArray.push(myObj);//var myArray = [myObj];alert(typeof(myArray));//輸出Object

 

三、題外話

日複一日,年複一年,點點滴滴,日久生情……

 

JavaScript學習筆記——文法基礎1.2

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.