javascript
011_JavaScript数据类型
1. JavaScript有5種常用的數據類型: 字符串值(String), 數字(Number), 布爾值(Boolean), 數組(Array), 對象(Object)。
2. JavaScript有還有2種特殊的數據類型: 空(Null)、未定義(Undefined)。
3. JavaScript字符串
3.1. JavaScript字符串是引號中的零個或多個Unicode字符。
3.2. 字符串可以使用單引號或雙引號:
var x = 'hello world'; var y = "hello world";3.3. Java則是用雙引號聲明字符串, 用單引號聲明字符。但是由于JavaScript沒有字符類型, 所以可使用這兩種表示法中的任何一種。
4. JavaScript數字
4.1. JavaScript只有一種數字類型(Number)。數字可以帶小數點, 也可以不帶。帶小數點是浮點數, 不帶小數點是整數。
4.2. 數字的取值范圍: 5e-324 ~ 1.7976931348623157e+308 。
4.3. 特殊的數字類型: NaN(not a number)、Infinity(正無窮大)、-Infinity(負無窮大)。
4.4. 實例
var a = 100; var b = 1.11; var c = NaN; var d = Infinity; var e = -Infinity;5. JavaScript布爾值
5.1. JavaScript布爾值只有兩個值: true或false。
5.2. 實例
var x = true; var y = false;6. JavaScript數組
6.1. JavaScript數組用于在單一變量中存儲多個值。
6.2. 創建數組最簡單的方式是使用中括號[]包含項, 多個項用逗號分割。
6.3. 實例
var x = []; var y = [0, true, 'hello world'];6.4. 我們通過引用索引號(下標號)來引用某個數組元素。
6.5. 數組索引從0開始。[0]是數組中的第一個元素, [1]是第二個, 依此類推。
7. JavaScript對象
7.1. 創建對象最簡單的方式是使用花括號{}包含項。
7.2. 在花括號內部是對象的屬性, 屬性以名稱和值對的形式(name: value)來定義, 名稱和值以冒號分割。
7.3. 在花括號內部的多個屬性以逗號分割。
7.4. 實例
var x = {}; var y = {id: 100, name: 'zs', isMan: false};8. Undefined類型
8.1. Undefined類型只有一個值, 即undefined。
8.2. undefined字面意思是未定義, 但是它卻表示沒有值的變量。即當聲明的變量未初始化時, 該變量的默認值是undefined。
8.3. 下面這段代碼, 第一行聲明變量x, 沒有初始值, 該變量將被賦予值undefined。第二行代碼顯示"true", 說明這兩個值確實相等。
var x; window.alert(x == undefined); //輸出true8.4. 值undefined并不同于未聲明的變量。但是, typeof運算符并不真正區分這兩種值??紤]下面的代碼:
var x; window.alert(typeof x); //輸出undefined window.alert(typeof y); //輸出undefined8.5. 上面的代碼對兩個變量輸出的都是"undefined", 即使變量y從未被聲明過。如果對y使用除typeof之外的其他運算符的話, 會引起錯誤, 因為其他運算符只能用于已聲明的變量上。例如, 下面的代碼將引發錯誤:
var x; window.alert(y == undefined);8.6. 當函數無明確返回值時, 返回的也是值"undefined", 如下所示:
function myFunc() { } window.alert(myFunc() == undefined); // 輸出true9. Null類型
9.1. Null類型也只有一個值, 即null。
9.2. null表示尚未存在的對象。
9.3. 其實undefined是從值null派生來的, 因此JavaScript把它們定義為相等的:
window.alert(null == undefined); // 輸出true9.4. 盡管這兩個值相等, 但它們的含義不同。undefined是聲明了變量但未對其初始化時賦予該變量的值, null則用于表示尚未存在的對象。
9.5. 如果函數或方法要返回的是對象, 那么找不到該對象時, 返回的通常是null。
9.6. 可以通過將變量的值設置為null來清空對象。
9.7. 在JavaScript中, null的數據類型是對象。
10. 例子
10.1. 代碼
<!DOCTYPE html> <html> <head><title>數據類型</title><meta charset="utf-8" /> </head> <body><script type="text/javascript">var a, b = undefined;var c = null;var d = 'hello world';var e = 1, f = 3.14, g = NaN, h = Infinity, i = -Infinity;var j = true, k = false;var l = [100, true, 'zhangsan'];var m = {id: 1001, name: 'zs', isMan: true};document.write('a = ' + a + ', b = ' + b + '<br />');document.write('c = ' + c + '<br />');document.write('(b == c) = ' + (b == c) + '<br />');document.write('d = ' + d +'<br />');document.write('e = ' + e + ', f = ' + f + ', g = ' + g + ', h = ' + h + ', i = ' + i + '<br />');document.write('j = ' + j + ', k = ' + k + '<br />');document.write('l =' + l + '<br />');document.write('m =' + m + '<br />');m = null;document.write('m =' + m + '<br />');</script> </body> </html>10.2. 效果圖
11. typeof運算符
11.1. 您可使用typeof運算符來確定JavaScript變量或表達式的類型。
11.2. typeof運算符把對象、數組或null返回object。
11.3. typeof運算符把函數返回function。
11.4. 例子
11.4.1. 代碼
<!DOCTYPE html> <html> <head><title>typeof運算符</title><meta charset="utf-8" /> </head> <body><script type="text/javascript">var a, b = undefined;var c = null;var d = 'hello world';var e = 1, f = 3.14, g = NaN, h = Infinity, i = -Infinity;var j = true, k = false;var l = [100, true, 'zhangsan'];var m = {id: 1001, name: 'zs', isMan: true};document.write('a =' + a + ', a的數據類型是: ' + typeof a + '<br />');document.write('b =' + b + ', b的數據類型是: ' + typeof b + '<br />');document.write('c =' + c + ', c的數據類型是: ' + typeof c + '<br />');document.write('d =' + d + ', d的數據類型是: ' + typeof d + '<br />');document.write('e =' + e + ', e的數據類型是: ' + typeof e + '<br />');document.write('f =' + f + ', f的數據類型是: ' + typeof f + '<br />');document.write('g =' + g + ', g的數據類型是: ' + typeof g + '<br />');document.write('h =' + h + '。 h的數據類型是: ' + typeof h + '<br />');document.write('i =' + i + ', i的數據類型是: ' + typeof i + '<br />');document.write('j =' + j + ', j的數據類型是: ' + typeof j + '<br />');document.write('k =' + k + ', k的數據類型是: ' + typeof k + '<br />');document.write('l =' + l + '。 l的數據類型是: ' + typeof l + '<br />');document.write('m =' + m + ', m的數據類型是: ' + typeof m + '<br />');function myFunction(){}document.write('myFunction =' + myFunction + ', myFunction的數據類型是: ' + typeof myFunction + '<br />');document.write('(' + f + ' + ' + e + ')表達式的數據類型是: ' + typeof (f + e));</script> </body> </html>11.4.2. 效果圖
12. JavaScript字面量
12.1. 字符串、數字包括NaN和Infinity和-Infinity、布爾、Null、Undefined都是字面量(沒有使用new關鍵字創建對象的值)。
12.2. 字面量跟常量的意思差不多。
12.3. 實例
'' '你好' 0 3.14 NaN Infinity -Infinity true false null Undefined13. JavaScript值
13.1. JavaScript有兩種類型的值: 字面量值和變量值。
13.2. 實例
var x = 1; var y = x + 3.14; // 算數運算, 使用了x這個變量值總結
以上是生活随笔為你收集整理的011_JavaScript数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 008_JavaScript输出
- 下一篇: 096_JavaScript事件