Js初體驗(-) 1 js的基礎知識 A web三大標準:1 html:結構標準 2 css:表現標準 3 javascript:行為標準 B js三種書寫方式:1 行內js:onclick = “alert=(‘AAAAA’)” 2 內嵌js:在html頁面中通過一對script標簽,js代碼寫在 ...
Js初體驗(-)
1 js的基礎知識
A web三大標準:1 html:結構標準 2 css:表現標準 3 javascript:行為標準
B js三種書寫方式:1 行內js:onclick = “alert=(‘AAAAA’)”
2 內嵌js:在html頁面中通過一對script標簽,js代碼寫在script標簽中
3 外聯js:在script標簽中用src屬性來引入外部的js文件,但是在這堆script標簽中不能寫js代碼,他的作用只是只是引入外聯的js代碼
C js初接觸的簡單五句話:1 alert(“”) 彈出一個警示框
2 console.log(“”) 在瀏覽器console面板顯示內容(多用來檢查或者找bug)
3 document.write(“” ) 在頁面中顯示內容,在js中只要是用雙引號或者是單引號引起來的內容都是字元串
4 prompt(“”) 彈出一個文本框,提示用戶輸入信息
5 confirm(“”) 彈出一個選擇框
D js的變數:
1直接變數:直接拿過來使用的數據值, 直接量有:字元串,數字
2 變數
1 變數的聲明:關鍵詞:var 在記憶體開闢一片空間 如 var name = ‘jack’
2 變數的賦值:name = ‘’ 在空間存入數據
3 變數的定義:包含變數的聲明和賦值,推薦使用變數的定義 註意: = 號在js中是賦值符
3 變數的命名規則:
1.變數名必須以字母、下劃線_、$開頭
2.變數的名字中包含數字,字母(a-z A-Z) ,_ ,$
3.js中變數的名字嚴格區分大小寫
4.變數的名稱不能使用js中的關鍵字和保留字
5.不能以數字開頭
建議:變數的命名儘可能有意義,命名使用駝峰命名法
4 +的作用:
1.連接符的作用 只要加號的一邊是字元串,那麼加號就是連接符的作用
2.數學運算符的作用 加號兩邊都是數字,那麼加號就是運算符的作用
E 轉義符的使用:
轉義符:用來表示一些特殊符號,反斜杠\
常用的轉義:
常用:
\n:換行
\t:縮進
\b:退格
F js’中的數據類型:
Js中的數據類型:js是動態弱類型的腳本語言
簡單的數據類型:
字元串:string
數字類型;number
空:null
空:undefined 表示未定義
Boolean:布爾類型 true flase
複雜數據類型:數組,函數,對象,object。。。。。
G js中數據類型的檢測:typeof console.log(typeof 要檢測的數據)
註意:只要用戶輸入的內容都是字元串類型的數據
H js中的算術運算符:
1 二元運算符 需要兩個操作數參與的運算,+ - * / %(取餘)
2 一元運算符
1 ++:分為前++和後++ 前++:先在原來的操作數上先+1,然後再參與運算
後++:先拿原來的操作數,參與運算,然後再+1
2 --:分為前--和後-- 前--:現在原來的操作數上先-1,然後再參與運算
後--:先拿原來的操作數,參與運算,然後再-1
3 複合運算符:+= -= *= /= %=
I js中的關係表達式以及邏輯運算符:1關係表達式 用關係運算符鏈接的表達式就是關係表達式
註意:關係表達式的結果都是一個布爾類型的值
2 邏輯運算符: 邏輯與:&& 邏輯或:|| 邏輯非:!
2 js數據類型的轉換
A 數據類型的轉換:
1 數據類型轉換成number類型
1 隱式轉換:通過 + - * / % 將undefined轉換成成number類型得到的結果是NaN,NaN表示:not a number
不是一個數字。NaN也是number類型中的一個值。他是用來表示數字的一種非正常狀
態 在js中對不能轉換成number類型的值 都是NaN 用來表示數字的一種非正常
狀態,為了不讓程式報錯、
註意:+號要寫在前面
2 顯式轉換(強制類型轉換)Number();parseInt();parseFloat()
Number()轉換的特點:
1.如果是數字類型的字元串都能轉換成number類型
2.對於true、false、null都能正常轉換成數字類型
3.undefined轉換成number類型都不能正常轉換成數字類型,得到結果是NaN
4.對不能轉換成number類型都得結果都是NaN。
對於parseInt()轉number類型的特點:
1.對於數字類型的字元串都能轉換成number類型
2.對於null、true、false、undefined不能正常轉換成number類型,最後得到的都是NaN
3.對於帶有數字的字元串,如果前面是數字,使用parseInt轉換的時候只轉換前面的數字部分,對於後面不能轉換的部分直接丟棄;如果是字母在前面 直接全部不能轉換,的到的是NaN
4.對於是小數的,只取前面的整數部分,後面的都丟棄
註意:取整數部分不是四捨五入,而是直接取整數部分
parseFloat()轉換成number類型的時候和parseInt是一樣的,只不過對於小數,parseFloat能取到小數部分
2 將數據轉換成string類型
1 隱式轉換 var num = 20;
var str = num + "";
2 顯式轉換 toString(); String();
var num = 100;
var res = num.toString() ;可以在toString()在小括弧中加入一個參數值。可以將其轉成對應的進位的值
註意:null和undefined不能使用toString()方法,轉成數據類型
String()可以直接將null和undefined轉成string console.log(String(null/undefine))
3 數據轉換成Boolean類型
1 隱式轉換 !! var num = 100;
var res = !!num;
註意:能轉換成false的有 :0,null,undefined, "" ,NaN;
2 顯式轉換 Boolean()
非0的數轉換成布爾類型都是true
B 程式的結構:
1 順序結構:程式從上外下按順序執行
2 選擇結構:1 if結構 if(判斷條件){ 判斷條件一般都是關係表達式或者邏輯表達式
執行代碼}
執行過程:當程式運行到if的時候,先判斷小括弧中的判斷條件,如果判斷條件成立(返回true),那麼執行後面大括弧中的執行代碼,如果條件不成立(返回false),那麼直接跳過大括弧,執行下麵的代碼;
2 if-else結構 if(判斷條件){
執行代碼1}else{執行代碼2
}
執行過程:當程式執行到if的時候,先判斷小括弧中的判斷條件,如果判斷條件成立(返回一個true),這個時候,執行後面大括弧中的執行條件1,如果判斷條件不成立(返回false),這個時候執行else後面的大括弧中的執行代碼2
3 分支結構: 1 if-else if if(判斷語句){
執行語句1}else if(判斷語句2){
執行語句2}else{執行語句3
}
執行過程:當程式運行if的時候,先判斷判斷語句
1,如果成立,則執行語句1,如果不成立,那麼繼續判斷判斷條件
2,如果成立,則執行執行語句2,如果不成立繼續判斷判斷條件
3,以此類推
2 switch switch(變數或者固定的值){
case 條件1:
執行語句1
break;
case 條件2:
執行語句2
break;
.....
default
執行語句。。。
break;
}
執行過程:當程式運行到switch的時候,先和switch後面小括弧的值,和case中的條件去匹配,匹配上哪一個case就執行哪一個case下麵的執行語句。如果都沒有匹配上,那麼久執行default中的語句
註意:if-else if和switch-case 區別 if-else if 一般使用來區間判斷
switch-case 一般使用定值判斷
4 迴圈結構
1 While
while(迴圈條件){迴圈條件一般都是關係表達式或者是迴圈表達式或者是布爾類型的值
迴圈體;(重覆中的這件事件)
改變迴圈的條件
}
執行過程:當程式運行到while的時候,先判斷迴圈條件,如果迴圈條件返回一個true,則執行大括弧中的迴圈體,如果迴圈條件是false,直接跳過大括弧,迴圈體不會被執行
2 do while
do{
迴圈體;
改變迴圈的條件;
}while(迴圈條件)
3 for
for(表達式1;表達式2;表達式3){
迴圈體
}
表達式1:一般都是用來給變數賦初值
表達式2:迴圈判斷條件 一般都是關係表達式
表達式3:改變迴圈條件
C 三元表達式:
表達式1? 表達式2: 表達式3;表達式1:一般都是關係表達式或者是邏輯表達式或者是boolean類型的值
gender == '男' ? console.log(1):console.log(0);
D 短路運算: 短路運算符:&& ||
&&:短路運算:找假 &&兩邊的值,先判斷第一個,如果第一個值是true(會預設有一個隱式轉換)則直接返回第二個
值,不管第二個值是什麼。如果第一個值轉換後是flase。直接返回第一個值,不需要再去理第二個值是什麼
||短路運算符:找真 如果第一個值轉換成布爾類型之後,如果是true,直接返回第一個值,不需要理第二個值是什麼。
如果第一個值轉換之後是false,那麼直接返回第二個值。
註意:
1.如果兩邊都是關係表達式或者邏輯表達式或者是布爾類型的值得時候,&&和||就是起到邏輯運算符的作用
2.如果&&和||兩邊是固定的值或者是變數或者是對象,這個時候&&就是起到短路運算的作用
E 關於break和continue的使用:
1 break的使用 終止當前整個迴圈,迴圈不再繼續執行,並且break後面的代碼不執行
2 continue 用來終止當次迴圈,進入下一次迴圈,如果迴圈中遇到continue跳出當次迴圈,
continue後面的代碼都不在執行
3 continue和break區別:
continue和break的相同點:都可以終止代碼,這兩個後面的代碼都不執行
(對於當前的迴圈)
continue和break的區別
1 continue終止當次迴圈,迴圈還在繼續,進入下一次迴圈
2 break直接終止整個迴圈,迴圈結束不再繼續進行