JavaScript的數(shù)據(jù)類型分為倆種,一種是基本數(shù)據(jù)類型,一種是引用數(shù)據(jù)類型
1、基本數(shù)據(jù)類型包括:
-
Number – – (數(shù)字)
-
String – – (字符串)
-
Boolean – – (布爾值)
-
Undefined – – (未定義)
-
Null – – (空的)
-
Symbol – – (符號(hào))
2、引用數(shù)據(jù)類型包括:
1)、Object – – (對(duì)象)
以下都是屬于Object之內(nèi)的:
2.Array – – (數(shù)組)
3.Function – – (函數(shù))
4.Date – – (時(shí)間)
5.RegExp – – (正則)
6…(還有很多)
基本數(shù)據(jù)類型的取值:
Number:
數(shù)字(數(shù)字可以帶小數(shù)點(diǎn)也可以不帶)、NaN、Infinity
String:
字符串可以是引號(hào)中的任意文本。雙引號(hào)單引號(hào)都可以。也可以使用ES6的模板字符串 “
如:
var a = 'xxx';var a = "xxx";
這倆種都是聲名的字符串。
Boolean:
只有倆個(gè)值:true或false。
布爾值常用在條件測(cè)試中。比如說判斷1>2是不是對(duì)的,是對(duì)的就返回true,是錯(cuò)的就返回false,然后我們就可以根據(jù)返回的結(jié)果去做倆種不同的操作。
Undefined:
取undefined一個(gè)值。
表示變量不含有任何值。是未定義的狀態(tài)。
Null:
表示變量的值為空,可以通過將變量的值設(shè)置為null來清空變量。
Symbol:
關(guān)于Symbol的詳細(xì)介紹請(qǐng)移步到ES6阮一峰符號(hào)的詳細(xì)介紹
引用數(shù)據(jù)類型的介紹:
Array:
數(shù)組: 保存一組數(shù)據(jù)
數(shù)組對(duì)象的作用是:使用單獨(dú)的變量名來存儲(chǔ)一系列的值。
(動(dòng)態(tài)數(shù)組:可自動(dòng)根據(jù)元素個(gè)數(shù)調(diào)用長(zhǎng)度大?。?/p>
概念:
1)、元素:數(shù)組中所保存數(shù)據(jù)的空間
2)、長(zhǎng)度:數(shù)組中所保存元素的個(gè)數(shù)
3)、下標(biāo)(索引):數(shù)組中元素的編號(hào),從0開始編號(hào),到(數(shù)組的長(zhǎng)度-1)結(jié)束
使用:
a、創(chuàng)建數(shù)組對(duì)象:
var arr = [];//直接量 var arr = new Array();//創(chuàng)建數(shù)組對(duì)象。 var arr = [1,2,3];//直接量,在創(chuàng)建數(shù)組對(duì)象的同時(shí)初始化保存的數(shù)據(jù)。 var arr = new Array(1,2,3);在創(chuàng)建數(shù)組對(duì)象的同時(shí)初始化保存的數(shù)據(jù)。 var arr = new Array(size);//size為數(shù)字參數(shù),表示創(chuàng)建數(shù)組時(shí)先預(yù)定size個(gè)空間。
b、訪問數(shù)組元素:
數(shù)組名[下標(biāo)]
c、數(shù)組元素遍歷迭代:
- 普通循環(huán)
for(let i = 0;i < array.length; i++) { //array[i]}
- for-in
for(let 變量名 in 數(shù)組名) { //變量名中所保存的值是數(shù)組下標(biāo)編號(hào)的字符串內(nèi)容 //仍然使用“數(shù)組名[字符串下標(biāo)]”來訪問數(shù)組對(duì)應(yīng)下標(biāo)處的元素}
- for-of(ES6)
for(let 變量名 of 數(shù)組名) { //變量名中所保存的值是數(shù)組中當(dāng)前便利到的元素值}
- 數(shù)組的api
數(shù)組的API詳細(xì)介紹請(qǐng)看數(shù)組的常用方法
Object:
(OOP:萬物皆對(duì)象)
創(chuàng)建對(duì)象的方法有:
1、直接量:
var stu = { name: '李四', age: 18, eat: function(pig) { console.log('吃:' + pig) }}
2、構(gòu)造函數(shù)創(chuàng)建
function Person() { this.name = 'jack'; this.job = function() { alert('program'); }}var person = new Person();
3、通過object方式創(chuàng)建
var person = new Object();person.name = 'jack';person.sex = 'girl';
對(duì)象的屬性調(diào)用:
對(duì)象名.屬性名
對(duì)象名.方法名(【參數(shù)列表】)
或:
對(duì)象名【“屬性名”】
對(duì)象名【“方法名”】();
Function:
函數(shù)是由事件驅(qū)動(dòng)的或者當(dāng)它被調(diào)用時(shí)可重復(fù)使用的代碼塊。
本質(zhì):代碼塊。
定義:
1)、聲名函數(shù)
function 函數(shù)名(參數(shù)列表) { //函數(shù)主體:可被重復(fù)使用的代碼塊}
2)、函數(shù)表達(dá)式
var 變量名 = function(參數(shù)列表) { //函數(shù)主體:可被重復(fù)使用的代碼塊}
3)、了解:new Function() //這個(gè)基本上不用了,上面?zhèn)z個(gè)算是這個(gè)的縮寫。
調(diào)用:
a.直接調(diào)用
函數(shù)名()
b.事件驅(qū)動(dòng)
document.getElementById(‘xx’).onclick = 函數(shù)名;
參數(shù)(相當(dāng)于一個(gè)函數(shù)的輸入):
-
形式參數(shù)(形參):函數(shù)定義時(shí)的參數(shù)
-
實(shí)際參數(shù)(實(shí)參):函數(shù)調(diào)用時(shí)的參數(shù)
返回值(相當(dāng)于是函數(shù)的輸出):
return 表達(dá)式;
函數(shù)返回值是返回到函數(shù)調(diào)用處
基本數(shù)據(jù)類型和引用數(shù)據(jù)類型的區(qū)別:
基本數(shù)據(jù)類型的值是存放在棧中。
引用數(shù)據(jù)類型的值是存放在堆中。