1. 在HTML裏面加入JavaScript瀏覽器
方法很是簡單,就是經過一對<script></script>標籤,而後在標籤裏面書寫代碼便可緩存
2. 標籤位置函數
按照之前傳統的方法,咱們的script標籤都是放在head標籤裏面的。可是因爲瀏覽器進行渲染的時候是由上往下進行渲染,這樣會致使瀏覽器在呈現頁面的時候出現延遲。延遲的時候就是空白,影響用戶體驗。因此如今的方法,都是講script標籤寫body裏面,元素的後面。對象
3. 外部JS文件blog
1)可維護性高ip
2)可緩存:例若有兩個HTML文件(A,B)都是用的同一個JS文件。當用戶請求A頁面的時候,A頁面的HTML文件和JS文件一塊兒被下載到本地。接下來用戶再請求B頁面的時候,只須要下載B頁面的HTML頁面便可,由於JS文件已經有了。內存
4. JavaScript語法ci
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)
{
//代碼
}
//若是有什麼衝突請見諒。