1.我學(xué)了什么
1.JavaScript功能
a.數(shù)據(jù)處理
b.用戶(hù)交互
c.服務(wù)器端開(kāi)發(fā)
2.JavaScript組成

圖片1.png
3.JavaScript語(yǔ)法
1.1變量
變量是可變的量,從編程角度講,JavaScript變量是存儲(chǔ)數(shù)據(jù)值得容器.
1.2 聲明變量 var x 使用var聲明x
賦值 = 使用等于號(hào)賦值
var x=10 使用var 聲明x賦值為10
4數(shù)據(jù)類(lèi)型的分類(lèi)
4.1原始類(lèi)型:number,string,boolean,undefined,null
-1.number
var a =10,b =20.1;
-2.string 用單引號(hào)或雙引號(hào)包裹的叫string類(lèi)型
var c = "hello world"
var c = "good"
-3.boolean
只有兩個(gè)值true(1)或false(0)
-4.undefined
var a;一個(gè)變量之聲明未賦值就是undefined
使用typeof操作符來(lái)識(shí)別基本類(lèi)型
4.2引用數(shù)據(jù)類(lèi)型:array,object,function
-1.array
a1.聲明變量 var arr =[1,2,3,4]
a2.獲取數(shù)組的長(zhǎng)度 arr.length
a3.讀取數(shù)組的值(數(shù)組的下標(biāo)從0開(kāi)始) arr[index]
a4.向數(shù)組的末尾添加值 arr [arr.length]=5;
-2.object
b1.聲明對(duì)象
var exuejun ={
name:"exuejun",
age:25
}
b2.讀取變量的屬性
console.log(exuejun name);
-3.function 定義:封裝特點(diǎn)功能的代碼塊
c1.聲明函數(shù)
function a(){
console.log("hello wrolf")
}
c2.調(diào)用函數(shù)
a();
4.3.聲明提前
在正式執(zhí)行腳本之前,將所有var聲明的變量,提前預(yù)讀到(當(dāng)前作用域的)頂部,集中聲明創(chuàng)建.然后再開(kāi)始執(zhí)行程序.
***賦值留在本地.
eg:
console.log(a);
var a =10;
6.全局變量和局部變量
全局變量:在函數(shù)外聲明的變量
局部變量:在函數(shù)內(nèi)聲明的變量
5.數(shù)據(jù)類(lèi)型的轉(zhuǎn)換
5.1 強(qiáng)制轉(zhuǎn)換
任意-->數(shù)字:Number();
Number(true)//1;
Number(false)//0;
//只能識(shí)別數(shù)值的字符串
var a ="20";
var b ="hello world";
console.log(Nunber(a)):20;
console.log(Number(b))://NaN
5.2自動(dòng)轉(zhuǎn)換 (不需要程序員干預(yù),js自動(dòng)完成的類(lèi)型轉(zhuǎn)換)
算數(shù)計(jì)算中的自動(dòng)轉(zhuǎn)換:
A.算數(shù)計(jì)算中,數(shù)據(jù)都默認(rèn)轉(zhuǎn)為數(shù)字,再計(jì)算,不能轉(zhuǎn)為數(shù)字則為NaN
Boolean類(lèi)型:true-->1 false-->0
eg:
var a =1;
var b =true;
var c ="hello world";
console.log(a+b): //2
console.log(a-c): //NaN
B.特殊/+運(yùn)算中,碰到字符串,+就變?yōu)樽址唇? 另一個(gè)不是字符串的數(shù)據(jù),被自動(dòng)轉(zhuǎn)為字符串
比較運(yùn)算(>,<,>=,<=,==,!=)中的自動(dòng)轉(zhuǎn)換:
默認(rèn)將所有類(lèi)型轉(zhuǎn)為數(shù)字再比較
將兩個(gè)值做比較-->返回值:true、false
5.3強(qiáng)制轉(zhuǎn)換
任意-->數(shù)字:3個(gè)API
a.非字符串類(lèi)型轉(zhuǎn)數(shù)字
Number(x)
eg:
var a ="20";
console.log(Number(a)) //只能識(shí)別這樣的字符串
b. 將字符串轉(zhuǎn)為數(shù)字:2個(gè)API
parseInt(str):
從第一個(gè)字符開(kāi)始依次讀取每個(gè)數(shù)字,只要碰上第一個(gè)非數(shù)字字符 就停止,自動(dòng)跳過(guò)開(kāi)頭的空字符
***不識(shí)別小數(shù)點(diǎn)
何時(shí)使用:將字符串轉(zhuǎn)為整數(shù)時(shí)
var width="20px";
console.log(Number(width)) //NaN
console.log(parseInt(width)) //20
parseFloat(str):用法同parseInt
比較Number()和parseInt()
var b=true;
console.log(Number(b)) //1
console.log(parseInt(String(b))) //NaN
任意-->字符串:2個(gè)API
x.toString(); x不是undefined或null時(shí),才可用
String(x)
任意類(lèi)型-->Boolean: Boolean(x)
只有5個(gè)值轉(zhuǎn)為false:
"" NaN undefined null 0
其余都轉(zhuǎn)為true
6運(yùn)算符和表達(dá)式
6.1算術(shù)運(yùn)算
+,-,*,/,%,++,--
6.2比較運(yùn)算:將兩個(gè)值做比較-->返回值:true、false
>,<,>=,<=,==,!=
***關(guān)系運(yùn)算中:
a. 默認(rèn)將所有類(lèi)型轉(zhuǎn)為數(shù)字再比較
特殊情況
A.NaN:NaN不等于,不大于,不小于任何值(包括自己)
NaN和任何數(shù)據(jù)做!=比較時(shí),始終返回true
isNaN(n):本意是判斷一個(gè)值是否是NaN
6.3邏輯運(yùn)算:將多個(gè)關(guān)系運(yùn)算綜合起來(lái),得出最終結(jié)論,返回值:true、false
&& || !
6.4賦值運(yùn)算:+= -= *= /= %=
6.5三目運(yùn)算
var a=(10>4)?10:4;
2我掌握了什么
3我沒(méi)掌握的
1.JavaScript功能
a.數(shù)據(jù)處理
b.用戶(hù)交互
c.服務(wù)器端開(kāi)發(fā)
2.JavaScript組成

圖片1.png
3.JavaScript語(yǔ)法
1.1變量
變量是可變的量,從編程角度講,JavaScript變量是存儲(chǔ)數(shù)據(jù)值得容器.
1.2 聲明變量 var x 使用var聲明x
賦值 = 使用等于號(hào)賦值
var x=10 使用var 聲明x賦值為10
4數(shù)據(jù)類(lèi)型的分類(lèi)
4.1原始類(lèi)型:number,string,boolean,undefined,null
-1.number
var a =10,b =20.1;
-2.string 用單引號(hào)或雙引號(hào)包裹的叫string類(lèi)型
var c = "hello world"
var c = "good"
-3.boolean
只有兩個(gè)值true(1)或false(0)
-4.undefined
var a;一個(gè)變量之聲明未賦值就是undefined
使用typeof操作符來(lái)識(shí)別基本類(lèi)型
4.2引用數(shù)據(jù)類(lèi)型:array,object,function
-1.array
a1.聲明變量 var arr =[1,2,3,4]
a2.獲取數(shù)組的長(zhǎng)度 arr.length
a3.讀取數(shù)組的值(數(shù)組的下標(biāo)從0開(kāi)始) arr[index]
a4.向數(shù)組的末尾添加值 arr [arr.length]=5;
-2.object
b1.聲明對(duì)象
var exuejun ={
name:"exuejun",
age:25
}
b2.讀取變量的屬性
console.log(exuejun name);
-3.function 定義:封裝特點(diǎn)功能的代碼塊
c1.聲明函數(shù)
function a(){
console.log("hello wrolf")
}
c2.調(diào)用函數(shù)
a();
4.3.聲明提前
在正式執(zhí)行腳本之前,將所有var聲明的變量,提前預(yù)讀到(當(dāng)前作用域的)頂部,集中聲明創(chuàng)建.然后再開(kāi)始執(zhí)行程序.
***賦值留在本地.
eg:
console.log(a);
var a =10;
6.全局變量和局部變量
全局變量:在函數(shù)外聲明的變量
局部變量:在函數(shù)內(nèi)聲明的變量
5.數(shù)據(jù)類(lèi)型的轉(zhuǎn)換
5.1 強(qiáng)制轉(zhuǎn)換
任意-->數(shù)字:Number();
Number(true)//1;
Number(false)//0;
//只能識(shí)別數(shù)值的字符串
var a ="20";
var b ="hello world";
console.log(Nunber(a)):20;
console.log(Number(b))://NaN
5.2自動(dòng)轉(zhuǎn)換 (不需要程序員干預(yù),js自動(dòng)完成的類(lèi)型轉(zhuǎn)換)
算數(shù)計(jì)算中的自動(dòng)轉(zhuǎn)換:
A.算數(shù)計(jì)算中,數(shù)據(jù)都默認(rèn)轉(zhuǎn)為數(shù)字,再計(jì)算,不能轉(zhuǎn)為數(shù)字則為NaN
Boolean類(lèi)型:true-->1 false-->0
eg:
var a =1;
var b =true;
var c ="hello world";
console.log(a+b): //2
console.log(a-c): //NaN
B.特殊/+運(yùn)算中,碰到字符串,+就變?yōu)樽址唇? 另一個(gè)不是字符串的數(shù)據(jù),被自動(dòng)轉(zhuǎn)為字符串