1. 在HTML里面加入JavaScript
方法非常簡單,就是通過一對<script></script>標簽,然后在標簽里面書寫代碼即可
2. 標簽位置
按照以前傳統的方法,我們的script標簽都是放在head標簽里面的。但是由於瀏覽器進行渲染的時候是由上往下進行渲染,這樣會導致瀏覽器在呈現頁面的時候出現延遲。延遲的時候就是空白,影響用戶體驗。所以現在的方法,都是講script標簽寫body里面,元素的后面。
3. 外部JS文件
1)可維護性高
2)可緩存:例如有兩個HTML文件(A,B)都是用的同一個JS文件。當用戶請求A頁面的時候,A頁面的HTML文件和JS文件一起被下載到本地。接下來用戶再請求B頁面的時候,只需要下載B頁面的HTML頁面即可,因為JS文件已經有了。
4. JavaScript語法
1)JavaScript區分大小寫
test和Test表示不同變量
2)標識符
JavaScript里面的標識符由數字,字母,下划線(_)和$組成,不能以數字開頭
3)注釋
JavaScript注釋有兩種:多行注釋和單行注釋
4)關鍵字
所謂關鍵字,就是系統已經定義好了的標識符。我們不能夠使用關鍵字來作為我們的標志符。
關鍵字與保留字:所謂保留字,就是目前還沒有成為關鍵字,但是有可能在下一個版本成為關鍵字的一些標識符。我們也不能使用保留字來作為我們的標識符
5)變量
JavaScript是一門弱類型語言。JavaScript里面申明任何數據類型都用一個var就可以了
5. JavaScript里面的數據類型
JavaScript支持5種簡單的數據類型:number,string,boolean,undefined,null。
number:數字類型
string:字符串類型
boolean:布爾類型
undefined:定義了一個變量但是沒有被賦值
null:表示是一個空
undefined:表示一個變量定義了但是沒有被賦值
效果:
null:表示是一個空的對象。事實上我們的undefined就是從null上派生而來的。
boolean:布爾類型
布爾類型的值只有兩個:true和false。這兩個值是區分大小寫。
number類型:這個數據類型包含了整數和實數,NaN
八進制一般以0開頭,十六進制一般以0x開頭
在JavaScript里面,無論幾進制,最終計算結果都是以十進制來呈現
結果:最終都是以十進制的形式來顯示結果
實數:所謂實數,通俗的講,就是小數,當然也被稱之為浮點數。我們的浮點數有兩種表示方法:小數型,科學計數型
數值范圍:由於我們的內存是有限的,所以並不能保存所有的數。
如果超出我們JavaScript所支持的數值范圍,則會變成無窮大(infinity)或者無窮小(-infinity)
結果:
所謂NaN,英語全稱Not a number,表示不是一個數。如果任何一個數和NaN進行操作的話,返回的會是NaN
會彈出NaN。注意:NaN的數據類型也是number
NaN與任何值都不相等,包括它自己本身
結果:彈出false
isNaN():判斷一個參數是否不是一個數
例如:
返回結果會是false。因為1234是一個數,所以它不是NaN,所以返回false
數值轉換
number(),parseInt(),parseFloat()
number():將一個非數值轉換為數值
如果是一個布爾值,要么被轉換為1,要么被轉換為0
如果是數字,那么該是多少,就是多少
如果是null值,會被轉換為0
如果是undefined,會被轉換為NaN
字符串轉換為數字:
如果字符串里面只包含數字,那么只會被轉換為十進制
如果字符串為空,將會被轉換為0
如果有字母,那么就將會被轉換為NaN
如果字符串是八進制,那么會忽略前面的0,但是如果是16進制的話,會轉換為相應的十進制數
parseInt():該函數會更多的看是否有數字。如果有就會被轉換為數字。如果字符串為空,將會被轉換為NaN。還有一點就是,如果是3.14,那么會被轉換為3
事實上,我們parseInt()函數提供了第二個參數。指定轉換為幾進制
示例2:
parseFloat():該函數只能解析10進制,所以沒有第二個參數。會將帶有小數點的字符串轉換為小數。
string數據類型
string就是字符串數據類型。在JavaScript里面,字符串既可以用單引號也可以用雙引號
字符串內容本身如果含有單引號,那么外層就必須是雙引號,如果內容本身是雙引號,外層就需要是單引號
如果想內容和外層都是單引號或者雙引號,那么就需要加上轉義字符
字符串數據類型非常的霸道。只要字符串數據類型和其他數據類型一相加,就都變為了字符串數據類型
最終i的數據類型變為了string。
所以,這里有一個技巧,如果想讓其他數據類型變為字符串數據類型,只需要加一個空字符串就可以了。
toString():就是將其他數據類型轉換為字符串數據類型(但是不能轉換null和undefined)
String():5種數據類型都可以轉換為string類型
運算符
1. 一元運算符
只能操作一個值的操作符就被稱為一元運算符。自增和自減就是典型的一元運算符。
a++(a--)和++a(--a)
a++:先進行運算,然后再自增1
++a:先自增1,然后再參與運算
在JavaScript里面,自增自減不僅僅局限於數值,其他類型也可以。
如果是一個包含有效數字的字符串,會先將其轉換為數字,再執行加1或者減1的操作。字符串變量變為了數值變量。
如果運用於一個包含字母的字符串的時候,會被轉換為NaN
如果是布爾值false,會被轉換為0,然后再執行加1或者減1的操作。最終得到的數據類型number型
如果是布爾值true,會被轉換為1,然后再執行加1或者減1的操作。最終得到的數據類型number型
浮點型數據,和數學計算一樣。
2. 布爾運算符
1)非
非真即假,非假即真,相當於一個取反的過程。
2)與
就是兩個條件都要滿足。在JavaScript中,與運算符存在短路現象。第一個操作數為假的話,就不會再對第二個操作數進行判斷。
與操作符不一定返回的是真或者假,而是返回第二個操作數
如果第一個操作數是null,則返回null
如果第一個操作數是NaN,則返回NaN
如果第一個操作數是undefined,則返回undefined
3)或
或運算符也存在短路現象,如果第一個操作數為真,那么就不會再對第二個操作數進行判斷。
如果兩個都為真,則返回第一個操作數
如果都是null,則返回null
如果都是NaN,則返回NaN
如果都是undefined,則返回undefined
3. 乘性運算符
1)乘法
2)除法
3)取模
所謂取模,就是取一個數的余數
4. 加性運算符
1)加法
着重強調:字符串數據類型和其他類型進行相加時,最終得到字符串數據類型
2)減法
JavaScript里面會進行自動的數據類型轉換。
5. 關系運算符
大於,小於,大於等於,小於等於
如果是數的比較,那就不用說了
主要需要注意:字符串之間的比較,是按照ascii進行比較的。
如果是字符串和數字進行比較,如果字符串是有效數字,那么會將字符串轉換為數字
如果是字母,那么會先將其轉換為NaN
6. 相等運算符
1)==和!=
1. null和undefined是相等的。
2. 如果有一個操作數是NaN,那么返回false,另外NaN也不等於自己本身
3. 如果是數字的字符串和數字進行比較,會先將字符串轉換為數字
4. 布爾值里面true轉為1,false轉為0
2)===和!==
數值和數據類型都必須相等才會為true,否則為false
7. 條件運算符
條件運算符又被稱為三元運算符或者三目運算符
語法: 變量 = 表達式1 ? 表達式2 : 表達式3
8. 賦值運算符
=:和數學里面的=不一樣,這里代表賦值。
*=
/=
+=
-=
%=
9. 逗號運算符
使用逗號運算符可以在一條語句中執行多個操作。
逗號運算符總會返回表達式的最后一項。
語句
① 判斷語句
if語句的單分支情況
if(條件)
{
//代碼
}
if語句的雙分支情況
if(條件)
{
//代碼
}
else{
//代碼
}
if語句的多分支情況
if(條件)
{
//代碼
}
else if{
//代碼
}
else if{
//代碼
}
else{
//代碼
}
多分支的if語句存在一個跳樓現象
② 循環語句
1. for 循環
for(表達式1;表達式2;表達式3)
{
//代碼
}
//如果有什么沖突請見諒。