<meta charset="utf-8">
一 、基本的輸入狀態(tài)

二、什么是js (javascript)
與網(wǎng)頁進(jìn)行交換的腳本語言,具有一定的邏輯性
三、js的組成部分? (重點(diǎn))
1 . ECMASCRIPT 定于語法規(guī)范 (關(guān)鍵字、保留字)
2\. DOM 文檔對象模型 (用代碼控制元素) (有規(guī)范)
3\. BOM 瀏覽器對象模型 (用代碼控制 前進(jìn),后退,刷新,調(diào)用打印)
四、初體驗(yàn)js的三句話
- 1 .在控制臺(tái)輸出
console.log("你好"); //console 開發(fā)人員,測試使用
- 在頁面上顯示
document.write("你好");
document.write("<a href='#'>百度</a>")
- 對話框
alert("你好!");
五.js腳本的特點(diǎn) (了解)
(1) 腳本語言。JavaScript是一種解釋型的腳本語言,C、C++等語言先編譯后執(zhí)行,而JavaScript是在程序的運(yùn)行過程中逐行進(jìn)行解釋。
(2) 基于對象。JavaScript是一種基于對象的腳本語言,它不僅可以創(chuàng)建對象,也能使用現(xiàn)有的對象。
(3) 簡單。JavaScript語言中采用的是弱類型的變量類型, 對使用的數(shù)據(jù)類型未做出嚴(yán)格的要求.
(4) 動(dòng)態(tài)性。JavaScript是一種采用事件驅(qū)動(dòng)的腳本語言,它不需要經(jīng)過Web服務(wù)器就可以對用戶的輸入做出響應(yīng)。在訪問一個(gè)網(wǎng)頁時(shí),鼠標(biāo)在網(wǎng)頁中進(jìn)行鼠標(biāo)點(diǎn)擊或上下移、窗口移動(dòng)等操作,JavaScript都可直接對這些事件給出相應(yīng)的響應(yīng)。
(5) 跨平臺(tái)性。JavaScript腳本語言不依賴于操作系統(tǒng),僅需要瀏覽器的支持。因此一個(gè)JavaScript腳本在編寫后可以帶到任意機(jī)器上使用,前提是機(jī)器上的瀏覽器支持JavaScript腳本語言,目前JavaScript已被大多數(shù)的瀏覽器所支持。
六、注釋
- 單行注釋
// console.log("hi"); ctr+ / 當(dāng)行注釋快捷鍵
- 多行注釋
/**
console.log("hi");
console.log("hi");
console.log("hi");
**/
多行注釋 shift+alt+a
注意:多行注釋的快捷點(diǎn)非常不友好,就改掉 快捷

在搜索框里輸入 shift+alt+a
改快捷鍵 ctr+shift+/

七、引入外部文件,使用script標(biāo)簽 (了解)
- 細(xì)節(jié),一旦使用src屬性,那么該
script標(biāo)簽內(nèi)就不能編寫任何代碼,所有的代碼,都必須放外部的js文件.
- 細(xì)節(jié),一旦使用src屬性,那么該
- js的解析引擎,屬于單線程,正常情況,遇到了script,就終止html的解析,此時(shí)理解執(zhí)行script的代碼.我們將會(huì)遇到 js不能操作dom.
目前解決方案
- js的解析引擎,屬于單線程,正常情況,遇到了script,就終止html的解析,此時(shí)理解執(zhí)行script的代碼.我們將會(huì)遇到 js不能操作dom.
- 把scrip放置
body標(biāo)簽的后面 - 在
script標(biāo)簽上面添加async或defer,能實(shí)現(xiàn)異步 (先把所有的html解析完后,在執(zhí)行script代碼)
注意:async和defer都是異步,但是有區(qū)別
-
defer異步之后執(zhí)行,按照順序執(zhí)行代碼 -
async異步之后執(zhí)行,按照網(wǎng)絡(luò)加載的速度來執(zhí)行 (用得少,打亂依賴關(guān)系)
八、 charset 設(shè)置字符串編碼集 (了解)
<script charset="utf-8">
</script>
九 、數(shù)據(jù)類型 (重點(diǎn))
- 1.ES3的時(shí)候,js的數(shù)據(jù)類型只有6個(gè)
- js的數(shù)據(jù)類型,屬于弱類型,類型可以隨意修改;
- js聲明變量可以不賦予初始值 (不推薦)
值類型
string 字符串類型 , 由一組雙引號(hào)或者一組單引號(hào)組成.
number 數(shù)值類型 , 它包含(整型,浮點(diǎn)) 浮點(diǎn):小數(shù)點(diǎn)類型
boolean 布爾類型 ,它的世界里只有(true和fasle) true真,fasle假
null 空指針 (方便理解: 是個(gè)寂寞,大家說的寂寞是同一個(gè))
undefined 未定義類型,申明變量不賦予初始值,默認(rèn)值就是undefined
object 對象類型(引用類型)
系統(tǒng)定義: Object,Array,Function,Date...
自定義的: 構(gòu)造函數(shù)或者 類 定義自己的類型
十、如何定義變量
定義變量使用 var關(guān)鍵字 var variable
var strName; //它的默認(rèn)值是undefined
strName="劉德華";// 在內(nèi)存中開辟一個(gè)空間,空的名字叫做strName,該空間里裝值是 劉德華
注意: =,它會(huì)改變代碼的指向順序,會(huì)從右往左賦值,而且=還會(huì)進(jìn)行隱式換行;
十一 、命名規(guī)則 (重點(diǎn))
1, 變量名可以是數(shù)字,字母,下劃線_和美元符$組成;
2, 不能為數(shù)字開頭;
3, 不能使用關(guān)鍵字或保留字
4, 標(biāo)識(shí)符區(qū)分大小寫,如:age和Age是不同的變量。但強(qiáng)烈不建議用同一個(gè)單詞的大小寫區(qū)分兩個(gè)變量。
5, 變量命名盡量遵守駝峰原則: myStudentScore
6, 變量命名盡量見名思意, 可參考下圖

十二 、其他類型轉(zhuǎn)boolean類型 (重點(diǎn))
Boolean 類型的轉(zhuǎn)換規(guī)則: (牢記)
String: 非空字符串為true, 空字符串為false
Number: 非0數(shù)值為true, 0或者NaN為false
Object: 對象不為null則為true, null為false
Undefined: undefined為false
//在做運(yùn)算的時(shí)候,才容易出現(xiàn) NaN
NaN : not a number 不是一個(gè)數(shù)組
NaN 屬于 number類型,(特殊的值)
//特殊的值: NaN,undefined,null;
十三 、其他類型轉(zhuǎn)number類型
1.隱式轉(zhuǎn)換
除了加法以外的運(yùn)算,都是隱式轉(zhuǎn)換 ,還有 = 也能做隱式轉(zhuǎn)換
var sName="100";
sName-0 // 100
sName*1 // 100
sName/1 //100
2.強(qiáng)制轉(zhuǎn)換
使用了一些函數(shù)來除了
Boolean() 轉(zhuǎn)bool類型
parseInf() 轉(zhuǎn)數(shù)值類型,可以帶單位 ,只會(huì)保留整數(shù)
parseFloat() 轉(zhuǎn)數(shù)值類型,可以帶單位,會(huì)保留小數(shù)點(diǎn)
Number() 轉(zhuǎn)數(shù)值類型
作者:千鋒羅贊
鏈接:http://www.itdecent.cn/p/b8850be37639
來源:簡書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。