JavaScript 9. 資料類型
文章目錄
- JavaScript 9. 資料類型
- 1. JavaScript 擁有動态類型
- 2. JavaScript 字元串
- 3. JavaScript 數字
- 4. JavaScript 布爾
- 5. JavaScript 數組
- 6. JavaScript 對象
- 7. Undefined 和 Null
- 8. 聲明變量類型
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0gTMx81dsQWZ4lmZf1GLlpXazVmcvwFciV2dsQXYtJ3bm9CX9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5SOyETM1QWZ4UmMjBzMxUmMzYzX2UTMxQDM0IzLclDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
- 值類型(基本類型):字元串(String)、數字(Number)、布爾(Boolean)、空(Null)、未定義(Undefined)、Symbol。
- 引用資料類型(對象類型):對象(Object)、數組(Array)、函數(Function),還有兩個特殊的對象:正則(RegExp)和日期(Date)。
1. JavaScript 擁有動态類型
JavaScript 擁有動态類型。這意味着相同的變量可用作不同的類型:
var x; // x 為 undefined
var x = 5; // 現在 x 為數字
var x = "John";
變量的資料類型可以使用
typeof
操作符來檢視:
typeof "John" // 傳回 string
typeof 3.14 // 傳回 number
typeof false // 傳回 boolean
typeof [1,2,3,4] // 傳回 object
typeof {name:'John', age:34}
執行個體:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<p> typeof 操作符傳回變量或表達式的類型。</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
typeof "john" + "<br>" +
typeof 3.14 + "<br>" +
typeof false + "<br>" +
typeof [1,2,3,4] + "<br>" +
typeof {name:'john', age:34};
</script>
</body>
</html>
輸出:
typeof 操作符傳回變量或表達式的類型。
string
number
boolean
object
object
2. JavaScript 字元串
字元串是存儲字元(比如 “Bill Gates”)的變量。
字元串可以是引号中的任意文本。您可以使用單引号或雙引号:
var carname="Volvo XC60";
var carname='Volvo XC60';
您可以在字元串中使用引号,隻要不比對包圍字元串的引号即可:
var answer="It's alright";
var answer="He is called 'Johnny'";
var answer='He is called "Johnny"';
3. JavaScript 數字
JavaScript 隻有一種數字類型。數字可以帶小數點,也可以不帶:
var x1=34.00; //使用小數點來寫
var x2=34;
極大或極小的數字可以通過科學(指數)計數法來書寫:
var y=123e5; // 12300000
var z=123e-5; // 0.00123
執行個體:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<script>
var x1=34.00;
var x2=34;
var y=123e5;
var z=123e-5;
document.write(x1 + "<br>")
document.write(x2 + "<br>")
document.write(y + "<br>")
document.write(z + "<br>")
</script>
</body>
</html>
輸出:
34
34
12300000
0.00123
4. JavaScript 布爾
布爾(邏輯)隻能有兩個值:true 或 false。
var x=true;
var y=false;
5. JavaScript 數組
var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";
或者
var cars=new Array("Saab","Volvo","BMW");
執行個體:
<!DOCTYPE html>
<html>
<body>
<script>
var i;
var cars = new Array();
cars[0] = "Saab";
cars[1] = "Volvo";
cars[2] = "BMW";
for (i=0;i<cars.length;i++)
{
document.write(cars[i] + "<br>");
}
</script>
</body>
</html>
輸出:
Saab
Volvo
BMW
6. JavaScript 對象
對象由花括号分隔。在括号内部,對象的屬性以名稱和值對的形式 (name : value) 來定義。屬性由逗号分隔:
var person={firstname:"John", lastname:"Doe", id:5566};
上面例子中的對象 (person) 有三個屬性:
firstname
、
lastname
以及
id
。
空格和折行無關緊要。聲明可橫跨多行:
var person={
firstname : "John",
lastname : "Doe",
id : 5566
};
對象屬性有兩種尋址方式:
name=person.lastname;
name=person["lastname"];
執行個體:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<script>
var person=
{
firstname : "John",
lastname : "Doe",
id : 5566
};
document.write(person.lastname + "<br>");
document.write(person["lastname"] + "<br>");
</script>
</body>
</html>
輸出:
Doe
Doe
7. Undefined 和 Null
Undefined 這個值表示變量不含有值。
可以通過将變量的值設定為 null 來清空變量。
cars=null;
person=null;
執行個體:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<script>
var person;
var car="Volvo";
document.write(person + "<br>");
document.write(car + "<br>");
var car=null
document.write(car + "<br>");
</script>
</body>
</html>
undefined
Volvo
null
8. 聲明變量類型
var carname=new String;
var x= new Number;
var y= new Boolean;
var cars= new Array;
var person= new Object;