亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

對象的類型:本地對象(1)

 更新時間:2006年12月29日 00:00:00   作者:  
在ECMAScript中,所有對象并非同等創(chuàng)建的。一般說來,可以創(chuàng)建并使用的對象有三種。

3.3.1 本地對象

ECMA-262把本地對象(native object)定義為“獨立于宿主環(huán)境的ECMAScript實現(xiàn)提供的對象”。簡單說來,本地對象就是ECMA-262定義的類(引用類型)。它們包括:
你已經(jīng)從上一章了解了一些本地對象(Object、Function、String、Boolean和Number),本書后面的章節(jié)中還會討論一些本地對象。現(xiàn)在要討論的兩種重要的本地對象是Array和Date。
1. Array
與Java不同的是,在ECMAScript中有真正的Array類??梢匀缦聞?chuàng)建Array對象:
如果預先知道數(shù)組中項的個數(shù),可以用參數(shù)傳遞數(shù)組的大?。?/DIV>
使用這兩個方法,一點要使用括號,與它們在Java中的用法相似:
這里創(chuàng)建了一個數(shù)組,并定義了三個數(shù)組項,即"red"、"green"和"blue"。每增加一個數(shù)組項,數(shù)組的大小就動態(tài)地增長。
此外,如果知道數(shù)組應該存放的值,還可用參數(shù)聲明這些值,創(chuàng)建大小與參數(shù)個數(shù)相等的Array對象。例如,下面的代碼將創(chuàng)建一個有三個字符串的數(shù)組:
與字符串類似,數(shù)組中的第一個項位于位置0,第二個項位于位置1,依此類推??赏ㄟ^使用方括號中放置要讀取的項的位置來訪問特定的項。例如,要用剛才定義的數(shù)組輸出字符串"green",可以采用下面的代碼:
可用屬性length得到數(shù)組的大小。與字符串的length屬性一樣,數(shù)組的length屬性也是最后一個項的位置加1,意味著具有三個項的數(shù)組中的項的位置是從0到2。
前面提過,數(shù)組可以根據(jù)需要增大或減小。因此,如果要為前面定義的數(shù)組增加一項,只需把要存放的值放入下一個未使用的位置即可:
在這段代碼中,下一個未使用的位置是3,所以值"purple"將被賦予它。增加一項使數(shù)組的大小從3變成了4。但如果把值放在這個數(shù)組的位置25處會怎樣呢?ECMAScript將把從3開始到24的所有位置都填上值null,然后在位置25處放上正確的值,并把數(shù)組大小增大為26:
數(shù)組最多可以存放4294967295項,這應該可滿足大多數(shù)程序設計的需要。如果要添加更多的項,則會發(fā)生異常。
還可以用字面量表示定義Array對象,即使用方括號([和]),用逗號分隔值。例如,可以用下面的形式重寫前面的例子:
注意,在這個例子中,未明確使用Array類。方括號暗示把其中的值存放在Array對象中。用這種方式聲明的數(shù)組與用傳統(tǒng)方式聲明的數(shù)組相同。
Array對象覆蓋了toString()方法和valueOf()方法,返回特殊的字符串。該字符串是通過對每項調(diào)用toString()方法,然后用逗號把它們連接在一起構(gòu)成的。例如,對具有項"red"、"green"和"blue"的數(shù)組調(diào)用toString()方法或valueOf()方法,返回的是字符串"red,green,blue"。
類似的,toLocaleString()方法返回的也是由數(shù)組項構(gòu)成的字符串。唯一的區(qū)別是得到的值是通過調(diào)用每個數(shù)組項的toLocaleString()方法得到的。許多情況下,該方法返回的值都與toString()方法返回的值相同,也是用逗號連接字符串。
由于開發(fā)者也可能希望在數(shù)組之外創(chuàng)建這樣的值,所以ECMAScript提供了方法join(),它唯一的用途就是連接字符串值。join()方法只有一個參數(shù),即數(shù)組項之間使用的字符串。考慮下面的例子:
這里用方法join()創(chuàng)建了三種不同的數(shù)組表示。第一個join()方法使用逗號,本質(zhì)上與調(diào)用toString()方法或valueOf()方法等價。第二個和第三個join()方法使用不同的字符串,在數(shù)組項之間創(chuàng)建了奇怪的分隔符(可能不怎么有用)。理解的重點在于任何字符串都可以用作分隔符。
此刻也許你想知道,既然Array具有把自己轉(zhuǎn)換成字符串的方法,那么String是否有把自己轉(zhuǎn)換成數(shù)組的方法呢?答案是肯定的。String類的方法split()正用于此。split()方法只有一個參數(shù)??赡苡凶x者已經(jīng)猜到,該參數(shù)就是被看作數(shù)組項之間的分隔符的字符串。因此,如果有一個由逗號分隔的字符串,就可以用下面的代碼把它轉(zhuǎn)換成Array對象:
如果把空字符串聲明為分隔符,那么split()方法返回的數(shù)組中的每個項是字符串的字符,例如:
這里,字符串"green"將被轉(zhuǎn)換成字符串數(shù)組"g"、"r"、"e"、"e"和"n"。如果需要逐個字符的解析字符串,這種功能非常有用。
Array對象具有兩個String類具有的方法,即concat()和slice()方法。concat()方法處理數(shù)組的方式幾乎與它處理字符串的方式完全一樣。參數(shù)將被附加在數(shù)組末尾,返回的函數(shù)值是新的Array對象(包括原始數(shù)組中的項和新的項)。例如:
在這個例子中,用concat()方法把字符串"yellow"和"purple"加到數(shù)組中。數(shù)組aColors2包括5個值,而原始數(shù)組aColors仍只有3個值??赏ㄟ^對兩個數(shù)組分別調(diào)用toString()方法證明這一點。

相關文章

  • 一起來學習一下JavaScript的事件流

    一起來學習一下JavaScript的事件流

    這篇文章主要為大家詳細介紹了JavaScript的事件流,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • 詳解JSON.parse和JSON.stringify用法

    詳解JSON.parse和JSON.stringify用法

    本文詳細講解了JSON.parse和JSON.stringify的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • 深入理解JavaScript系列(19):求值策略(Evaluation strategy)詳解

    深入理解JavaScript系列(19):求值策略(Evaluation strategy)詳解

    這篇文章主要介紹了深入理解JavaScript系列(19):求值策略(Evaluation strategy)詳解,本文講解了一般理論、按值傳遞、按引用傳遞、按共享傳遞(Call by sharing)、按共享傳遞是按值傳遞的特例等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • 淺談Javascript中勻速運動的停止條件

    淺談Javascript中勻速運動的停止條件

    這篇文章主要給我們探討了Javascript中勻速運動的停止條件的原理及其與緩沖運動的區(qū)別,需要的朋友可以參考下
    2014-12-12
  • 最新評論