## JS初識(shí)
# js初識(shí)
# js注釋
# 變量
# 變量的命名
JS數(shù)值的類型
# Number類型
# String類型
# Boolean類型
# 特殊值 undefined類型/Null/NaN
# 算數(shù)運(yùn)算符
# 關(guān)系運(yùn)算符
# if語句
# Object類型
# 數(shù)組
ECMAScript不是一門語言,而是一個(gè)標(biāo)準(zhǔn),符合這個(gè)標(biāo)準(zhǔn)的比較常見的有:JavaScript,ActionScript
# script標(biāo)簽
# 輸出
輸出1:
alert(‘Hello world’);
作用:在界面中輸出,起提醒,警示作用
輸出2
console.log(‘Hello world’);
作用:在控制臺(tái)輸出,主要用于調(diào)試代碼
快捷鍵:
console.log(a);
a.log + tab
console.log(1+3);
1+3.log + tab
# 注釋
注釋的作用:
1.為了告訴別人代碼的作用 2.提高代碼可讀性
單行注釋 command + /
多行注釋 command + shift + /
# 變量
變量: 就是用來保存某種數(shù)據(jù)的名字,通過變量名就可以獲得保存在其中的數(shù)據(jù)
注意點(diǎn)
在js中變量是沒有類型的,typeof求的類型是存在變量里的數(shù)據(jù)的類型
-用var來聲明一個(gè)變量
var name; //聲明了一個(gè)叫做name的變量
name = ‘張三’; //= 叫做賦值符,把張三這個(gè)值賦值給name這個(gè)變量
-同時(shí)聲明和賦值:
var name = ‘張三’;
/*不推薦修改類型*/
-同時(shí)聲明兩個(gè)變量:
var height, Lt;
height = 120;
Lt = ‘二愣子’;
縮寫:
var height = 120,Lt = ‘二愣子’;
# 變量的命名
變量名不能隨意定義,要遵循以下規(guī)則:
1.變量的命名規(guī)則:由字母,下劃線_,數(shù)字,$組成,但是不能以數(shù)字開頭
2.不能使用JavaScript自己的關(guān)鍵字和保留字作為變量名.例如:eval,arguments,var
3.在命名變量名的時(shí)候,要能夠望文知義
4.駝峰標(biāo)識(shí)命名法,下劃線命名法
# JS數(shù)據(jù)類型
數(shù)字
字符串
布爾值
對(duì)象類型
字符串
# 數(shù)字類型Number(整型/浮點(diǎn)型/NaN)
數(shù)字/數(shù)值:在使用的時(shí)候,直接使用,不需要其他符號(hào)輔助,+,-
直接量/字面量
整型
浮點(diǎn)型12e-1 //e表示是10的多少次方
NaN //Not a Number
作用:
1.賦值 2.參與運(yùn)算
+,-,*,/,%,+=,-+,*=
如:
a += b;//a = a + b;
注意:
在js中表示數(shù)字的時(shí)候,使用二進(jìn)制記法
1 01 3 11
現(xiàn)實(shí)0.1 1/10
計(jì)算機(jī)中,1/2 1/4 1/…
所以如果打印0.3-0.2 結(jié)果不是等于0.1 而是近似0.1
# 字符串String
1.直接量:使用引號(hào)包裹,使用雙引號(hào)或者單引號(hào)
字符串拼接.
+
var lang = “Java”;
lang = lang + “Script”;
2.注意:
如果+號(hào)一側(cè)有字符串,會(huì)把其他的值轉(zhuǎn)化為字符串,再進(jìn)行拼接
var lang = “Java”;
lang = lang + 12; //Java12
3.希望字符串中包含引號(hào)
// 用單引號(hào)或者雙引號(hào)來區(qū)分
var str3 = name+“是一個(gè)’很好’的人”;
//轉(zhuǎn)義字符 \
var str3 = name+“是一個(gè)\’很好\’的人”;
# 布爾類型Boolean
true/false
真值:除了假值以外的值,空格是真值.在需要用到布爾類型數(shù)據(jù)的時(shí)候轉(zhuǎn)化成true
假值:false/null/0/-0/undefine/NaN/“”(空字符串).在需要用到布爾類型數(shù)據(jù)的時(shí)候會(huì)轉(zhuǎn)化為false
//值的轉(zhuǎn)化:默認(rèn)情況下,js會(huì)根據(jù)使用場(chǎng)景進(jìn)行自動(dòng)轉(zhuǎn)化
注意:
如:NaN/12 是假值,NaN為假值,除以一個(gè)真值還是假值
undefined類型
-變量沒有被賦值,初始值就是undefined;
-如果函數(shù)沒有返回值,返回值默認(rèn)是undefined;
-取一個(gè)對(duì)象的元素,如果沒有定義,也會(huì)默認(rèn)為undefined
null
-空,沒有東西,轉(zhuǎn)化為字符串的時(shí)候,不是空字符串,是’null’
NaN
-Not a number: 表示一個(gè)不是數(shù)字的數(shù)字;
-NaN和誰都不相等,包括它自己NaN != NaN
# 算術(shù)運(yùn)算符
用來計(jì)算的
++ 自增 : 變量值前,叫做前增量;變量之后,后增量
-- 自減 : 變量值前,叫做前減量;變量之后,后增量
注意:
前增量++,先+1,后取值
如:a = 3;
a = ++a + 1; //5
后增量++,先取值,再+1,馬后炮
如:a=3;
a = a++ + 1; //4
# 關(guān)系運(yùn)算符
用來比較關(guān)系
==/!=/===//<=/>=
等于/不等于/絕對(duì)相等/小于/大于/小于等于/大于等于
一般規(guī)律:先轉(zhuǎn)換再比較
關(guān)系運(yùn)算符的結(jié)果: 布爾值
# 邏輯運(yùn)算符
邏輯或,邏輯與,邏輯非
||,&&,!
1.邏輯或: ||
按照從左到右,如果第一個(gè)值是真值則返回第一個(gè)值作為結(jié)果;
如果第一個(gè)值不是真值,則返回第二個(gè)值作為結(jié)果
2.邏輯與: &&
按照從左到右,如果第一個(gè)值假值,則返回第一個(gè)值,否則返回第二個(gè)值作為結(jié)果
3.邏輯非: !
先把操作數(shù)轉(zhuǎn)化成布爾值,再取相反
//最短路徑,節(jié)約電腦消耗
# 運(yùn)算符的優(yōu)先級(jí)
(運(yùn)算符優(yōu)先級(jí)表可以上網(wǎng)查找)
1.算術(shù)運(yùn)算符混合運(yùn)算
2.算術(shù)運(yùn)算符關(guān)系運(yùn)算符
3.關(guān)系運(yùn)算符和邏輯運(yùn)算符
……(按表順序)
# 對(duì)象
可以包含其他的數(shù)據(jù)類型
var objc = {
//屬性名:屬性值
//在對(duì)象中的變量,稱之為屬性
’name’:’張三’,
‘a(chǎn)ge’:12
}
取值:
console.log(objc.name)
修改
objc.age = 24;
# 數(shù)組
-可以存儲(chǔ)其他數(shù)據(jù),數(shù)據(jù)之間用逗號(hào)分隔,數(shù)據(jù)可以是不同的類型
-存儲(chǔ)的數(shù)據(jù)是有序的,序號(hào)從0開始
var arr = [12,20,”張三”];
取值:
console.log(arr[0]);
修改
arr[2] = ‘李四’;
var c = 12;
xvsp
guangzhouH5di7qixujinsong
mima:520it.com
rupuppt
前面已經(jīng)var聲明過一個(gè)變量,后面再var其實(shí)就等于沒有var.