<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 1,  comments - 0,  trackbacks - 0

    數(shù)據(jù)類型

    Jscript 有三種主要數(shù)據(jù)類型、兩種復(fù)合數(shù)據(jù)類型和兩種特殊數(shù)據(jù)類型。

    主要(基本)數(shù)據(jù)類型是:

    • 字符串
    • 數(shù)值
    • 布爾

    復(fù)合(引用)數(shù)據(jù)類型是:

    • 對(duì)象
    • 數(shù)組

    特殊數(shù)據(jù)類型是:

    • Null
    • Undefined

    字符串?dāng)?shù)據(jù)類型

    一個(gè)字符串值是排在一起的一串零或零以上的 Unicode 字符(字母、數(shù)字和標(biāo)點(diǎn)符號(hào))。字符串?dāng)?shù)據(jù)類型用來表示 JScript 中的文本。腳本中可以包含字符串文字,這些字符串文字放在一對(duì)匹配的的單引號(hào)或雙引號(hào)中。字符串中可以包含雙引號(hào),該雙引號(hào)兩邊需加單引號(hào),也可以包含單引號(hào),該單引號(hào)兩邊需加雙引號(hào)。下面是字符串的示例:

    				
    						"Happy am I; from care I’m free!"
    '"Avast, ye lubbers!" roared the technician.' 
    "42"
    'c'
    				
    		

    請注意,JScript 中沒有表示單個(gè)字符的類型(如 C++ 的 char)。要表示 Jscript 中的單個(gè)字符,應(yīng)創(chuàng)建一個(gè)只包含一個(gè)字符的字符串。包含零個(gè)字符("")的字符串是空(零長度)字符串。

    數(shù)值數(shù)據(jù)類型

    在 Jscript 中整數(shù)和浮點(diǎn)值沒有差別;JScript 數(shù)值可以是其中任意一種(JScript 內(nèi)部將所有的數(shù)值表示為浮點(diǎn)值)。

    整型值

    整型值可以是正整數(shù),負(fù)整數(shù)和 0。可以用 10 進(jìn)制,8 進(jìn)制和 16 進(jìn)制來表示。在 Jscript 中大多數(shù)字是用十進(jìn)制表示的。加前綴“0”表示 8 進(jìn)制的整型值,只能包含 0 到 7 的數(shù)字。前綴為“0”同時(shí)包含數(shù)字“8”或“9”的數(shù)被解釋為十進(jìn)制數(shù)。

    加前綴“0x”(零和x|X)表示 16 進(jìn)制整型值。可以包含數(shù)字 0 到 9,以及字母 A 到 F(大寫或小寫)。使用字母 A 到 F 表示十進(jìn)制 10 到 15 的單個(gè)數(shù)字。就是說 0xF 與 15 相等,同時(shí) 0x10 等于 16。

    八進(jìn)制和十六進(jìn)制數(shù)可以為負(fù),但不能有小數(shù)位,同時(shí)不能以科學(xué)計(jì)數(shù)法(指數(shù))表示。

    浮點(diǎn)值

    浮點(diǎn)值為帶小數(shù)部分的數(shù)。也可以用科學(xué)計(jì)數(shù)法來表示。這就是說,大寫或小寫“e”用來表示 10 的次方。Jscript用數(shù)值表示的八字節(jié) IEEE754 浮點(diǎn)標(biāo)準(zhǔn)。這意味著數(shù)字最大可以到±1.7976931348623157x10308,最小到±5x10-324。以“0”開始且包含小數(shù)點(diǎn)的數(shù)字被解釋為小數(shù)浮點(diǎn)數(shù)。

    注意以“0x”或“00”開始并包含小數(shù)點(diǎn)的數(shù)將發(fā)生錯(cuò)誤。以下是 Jscript 中數(shù)字的例子。

    數(shù)字 描述 等價(jià)十進(jìn)制數(shù)
    .0001, 0.0001, 1e-4, 1.0e-4 四個(gè)相等的浮點(diǎn)數(shù)。 0.0001
    3.45e2 浮點(diǎn)數(shù)。 345
    42 整數(shù)。 42
    0378 整數(shù)。雖然看起來是八進(jìn)制數(shù)(以0開頭),但是8不是有效的八進(jìn)制數(shù)字,所以為十進(jìn)制數(shù)。 378
    0377 八進(jìn)制整數(shù)。注意它雖然看起來比上面的數(shù)只小1,但實(shí)際數(shù)值有很大不同。 255
    0.0001 浮點(diǎn)數(shù)。雖然以零開頭,但由于帶有小數(shù)點(diǎn)所以不是八進(jìn)制數(shù)。 0.0001
    00.0001 錯(cuò)誤。兩個(gè)零開頭表示為八進(jìn)制,但八進(jìn)制數(shù)不能帶有小數(shù)部分。 N/A (編譯錯(cuò)誤)
    0Xff 十六進(jìn)制整數(shù)。 255
    0x37CF 十六進(jìn)制整數(shù)。 14287
    0x3e7 十六進(jìn)制整數(shù)。注意‘e’并不被認(rèn)為指數(shù)。 999
    0x3.45e2 錯(cuò)誤。十六進(jìn)制數(shù)不能有小數(shù)部分。 N/A (編譯錯(cuò)誤)

    另外,JScript包含特殊值數(shù)字。它們是:

    • NaN (不是數(shù))。當(dāng)對(duì)不適當(dāng)?shù)臄?shù)據(jù)進(jìn)行數(shù)學(xué)運(yùn)算時(shí)使用,例如字符串或未定義值。
    • 正無窮大。在JScript中如果一個(gè)正數(shù)太大的話使用它來表示。
    • 負(fù)無窮大。在JScript中如果一個(gè)負(fù)數(shù)太大的話使用它來表示。
    • 正0和負(fù)0。Jscript區(qū)分正0和負(fù)0。

    Boolean數(shù)據(jù)類型

    盡管字符串和數(shù)字類型可以有無數(shù)不同的值,boolean 數(shù)據(jù)類型卻只有兩個(gè)值。它們是文字 true false。Boolean值是一個(gè)真值,它表示一個(gè)狀態(tài)的有效性(說明該狀態(tài)為真或假)。

    腳本中的比較通常得到一個(gè) Boolean 結(jié)果。考慮下一行 Jscript 代碼。

    				
    						y = (x == 2000);
    				
    		

    這里要比較變量 x 的值是否與數(shù)字 2000 相等。如果相等,比較的結(jié)果為 Boolean 值 true,并將其賦給變量 y。如果x與2000不等,則比較的結(jié)果為boolean值false

    Boolean值在結(jié)構(gòu)控制中尤其有用。可以將直接創(chuàng)建 boolean 值的比較與用使用該 boolean 值的語句相組合。考慮下面的JScript代碼范例。

    				
    						if (x == 2000)
        z = z + 1;
    else
        x = x + 1;
    				
    		

    當(dāng) boolean 值為 true 時(shí),Jscript 中的 if/else 語句執(zhí)行一個(gè)操作(這樣,z = z + 1),而當(dāng) boolean 值為 false 時(shí)執(zhí)行另一個(gè)操作(x = x + 1)。

    可以使用任意表達(dá)式作比較表達(dá)式。任何值為0、null、未定義或空字符串的表達(dá)式被解釋為 false。其他任意值的表達(dá)式解釋為 true。例如,可以使用如下表達(dá)式:

    				
    						
    								if (x = y + z) // 這可能不是想要的結(jié)果如下!
    				
    		

    注意上面的代碼并不檢查 x 是否與 y+z 相等,因?yàn)閮H使用了一個(gè)等號(hào)(賦值)。相反的,上面的代碼將 y+z 賦給變量 x,然后檢查整個(gè)表達(dá)式的值是否為零。要檢查 x 是否與 y+z 相等,使用如下代碼。

    				
    						
    								if (x == y + z) // 這與上面的代碼不同!
    				
    		

    Null 數(shù)據(jù)類型

    在 Jscript 中數(shù)據(jù)類型 null 只有一個(gè)值:null。關(guān)鍵字 null 不能用作函數(shù)或變量的名稱。

    包含 null 的變量包含“無值”或“無對(duì)象”。換句話說,該變量沒有保存有效的數(shù)、字符串、boolean、數(shù)組或?qū)ο蟆?梢酝ㄟ^給一個(gè)變量賦 null 值來清除變量的內(nèi)容。

    請注意,在 Jscript 中,null 與 0 不相等(與在 C 和 C++ 中不同)。同時(shí)應(yīng)該指出的是,Jscript中 typeof 運(yùn)算符將報(bào)告 null 值為 Object 類型,而非類型 null。這點(diǎn)潛在的混淆是為了向下兼容。

    Undefined 數(shù)據(jù)類型

    如下情況使返回 undefined 值:

    • 對(duì)象屬性不存在,
    • 聲明了變量但從未賦值。

    注意不能通過與 undefined 做比較來測試一個(gè)變量是否存在,雖然可以檢查它的類型是否為“undefined”。在以下的代碼范例中,假設(shè)程序員想測試是否已經(jīng)聲明變量 x :

    				
    						
    								// 這種方法不起作用
    if (x == undefined)    // 作某些操作
    
    // 這個(gè)方法同樣不起作用- 必須檢查
    // 字符串 "undefined"if (typeof(x) == undefined)    // 作某些操作
    
    // 這個(gè)方法有效
    if (typeof(x) == "undefined")    // 作某些操作
    				
    		

    考慮將 undefined 值與null做比較。

    				
    						someObject.prop == null;
    				
    		

    如下情況時(shí),比較的結(jié)果為 true

    • 如果屬性 someObject.prop 包含 null 值,
    • 如果屬性 someObject.prop 不存在。
    • 要檢查一個(gè)對(duì)象屬性是否存在,可以使用新的 in 運(yùn)算符:
    				
    						
    								if ("prop" in someObject)
    // someObject 有屬性
    						
    								 'prop'



    運(yùn)算符

    JScript 具有全范圍的運(yùn)算符,包括算術(shù)、邏輯、位、賦值以及其他某些運(yùn)算符。

    計(jì)算 邏輯 位運(yùn)算 賦值 雜項(xiàng) ? ? ? ? ?
    描述 符號(hào) 描述 符號(hào) 描述 符號(hào) 描述 符號(hào) 描述 符號(hào)
    負(fù)值 - 邏輯非 ! 按位取反 ~ 賦值 = 刪除 delete
    遞增 ++ 小于 < 按位左移 << 運(yùn)算賦值 oP= typeof 運(yùn)算符 typeof
    遞減 -- 大于 > 按位右移 >> ? ? void void
    乘法 * 小于等于 <= 無符號(hào)右移 >>> ? ? instanceof instanceof
    除法 / 大于等于 >= 按位與 & ? ? new new
    取模運(yùn)算 % 等于 == 按位異或 ^ ? ? in in
    加法 + 不等于 != 按位或 | ? ? ? ?
    減法 - 邏輯與 && ? ? ? ? ? ?
    ? ? 邏輯或 || ? ? ? ? ? ?
    ? ? 條件(三元運(yùn)算符) ?: ? ? ? ? ? ?
    ? ? 逗號(hào) , ? ? ? ? ? ?
    ? ? 嚴(yán)格相等 === ? ? ? ? ? ?
    ? ? 非嚴(yán)格相等 !== ? ? ? ? ? ?

    posted on 2006-10-11 21:45 yucc 閱讀(615) 評(píng)論(0)  編輯  收藏 所屬分類: javascript

    只有注冊用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    <2006年10月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    文章檔案

    搜索

    •  

    最新評(píng)論

    主站蜘蛛池模板: 亚洲视频免费在线播放| 久久国产乱子伦精品免费不卡 | 成人婷婷网色偷偷亚洲男人的天堂| 久久精品国产亚洲麻豆| 国产日产成人免费视频在线观看| 114级毛片免费观看| A级毛片高清免费视频在线播放| 自拍偷自拍亚洲精品播放| 亚洲中字慕日产2021| 亚洲伊人久久大香线蕉苏妲己| 国产亚洲精品久久久久秋霞| 四虎永久免费地址在线观看| 最近免费中文字幕4| 久久久久久精品成人免费图片| 久久免费国产精品一区二区| 一区二区三区免费精品视频| 美女尿口扒开图片免费| 亚洲乱妇老熟女爽到高潮的片 | 青娱分类视频精品免费2| 日韩精品无码一区二区三区免费| 最新亚洲成av人免费看| j8又粗又长又硬又爽免费视频| 青草久久精品亚洲综合专区| 亚洲国产精品日韩av不卡在线| 国产成人亚洲综合一区| 亚洲成_人网站图片| 亚洲人成电影青青在线播放| 亚洲国产高清在线精品一区| 亚洲国产人成在线观看| 亚洲毛片基地日韩毛片基地| 亚洲美女在线观看播放| 1区1区3区4区产品亚洲| 亚洲精品电影天堂网| 亚洲国产成人久久99精品| 亚洲午夜精品一区二区公牛电影院| 亚洲影视一区二区| 亚洲人配人种jizz| 亚洲日本VA午夜在线影院| 激情婷婷成人亚洲综合| 免费视频成人国产精品网站| jizz免费观看|