一、簡單了解JS
1. JavaScript(簡稱JS)是作為開發Web頁面的腳本語言,
2. JS是從1995年由網景公司的布蘭德開發,
3. JavaScript的標準是ECMAScript,
4. JS代碼是從上往下執行的,
二、變數
1. 變數名的值可以重復賦值(值可以修改),變數可以重復宣告,
2. JS中“+”號很特殊,只要是和字串相加都會變成字串,
3. var宣告(var n = 1;),其中var是宣告關鍵字,n是變數名字,=是賦值號,1是值,
4. 變數規范:①名字可以包含字母,數字,_,$, ②名字不能以數字開頭,嚴格區分字母大小寫, ③名字不能使用關鍵字保留字,比如,var、if、for、in等,
5. JavaScript是輕量級解釋型語言,
6. JS必須寫在html頁面里的script標簽內,script標簽一旦使用src加載了外部JS檔案后,這個script標簽里就不能寫JS陳述句了,
<script src="https://www.cnblogs.com/web-ShiWen/p/JS檔案路徑"></script>
7. JS有3種書寫方式:行內式、內嵌式、外部式
8. 警告框:alert;
輸入框:prompt;(輸入框里的內容永遠都是字串)
問詢框:confirm
9. 變數作用域:使用var宣告的變數表示是區域變數,它的有效范圍是當前作用域,
10. 特殊數值
JavaScript定義了幾個特殊的數值常量:
①Infinity:無窮大,當數值超過浮點型所能夠表示的范圍;反之,負無窮大為-Infinity,可以說無窮大表示數值達到了計算機理解不了的位數(長度),
②NaN:非數值,不等于任何數值,包括自己,如當0除以0時會回傳這個特殊值,一般出現在其他值想要轉化成數字的時候,有的值是無法轉成數字的用NaN表示,
③Number.MAX_VALUE:js中最大的數字1.7976931348623157e+308
④Number.MIN_VALUE:5e-324
三、資料型別
1.基本/基礎/原始/簡單資料型別:
null:表示空值,不占據計算機的存盤空間
undefined:表示變數定義了但未賦值
number:數字型別
string:字串型別
boolean:布林值型別(只有兩個值,true和false)
2.null和undefined的區別是什么?
null表示值是空的;undefined表示變數已定義但未賦值
3.使用var和不使用var宣告的變數有什么區別?
var宣告的變數只在當前作用域生效
不使用var宣告的變數全域生效
4.JS的特性之一:變數提升,將變數的宣告提升至當前JS檔案的最頂部,變數提升只是將宣告提升,值留在原地,
目的是為了減少非標準使用下的報錯,
5.JS的另一個特性——單執行緒,遇到報錯就停止,
6.字串必須使用單引號或雙引號
字串可以是空的字串
字串雙引號或單引號里可以嵌套另外一種字串的引號
字串里空格也是占位的
7.獲取字串的長度:console.log(變數名.length)
8.“\n”表示換行;“\”轉義符
四、判斷資料型別
1.typeof:語法 typeof 變數名
null和陣列型別會被判斷為object,NaN會被判斷為number,
2.constructor:語法 變數名.constructor
constructor是object的原型屬性,undefined和null沒有constructor屬性,不能夠直接讀取,否則會報錯,
3.toString:語法 toString()
toString可以檢測所有資料型別,它能夠回傳當前物件的字串表示,
4.測驗發現,不同型別物件呼叫toString()方法時回傳的字串格式并不統一,這是因為不同型別的子類在繼承object的原型方法toString時重寫了該方法,如果在物件上呼叫object的原型方法toString(),就會回傳統一格式的字串表示,例如:
var a = 1;
var b = "你好";
var c = null;
console.log(object.prototype.toString.apply(a));
表示為“[object Number]”
5.資料型別轉換:隱式轉換和顯示轉換
隱式轉換:js自己做的型別轉換,+,-,*,/,%等都是隱式轉換,
顯示轉換:Number、toString、Boolean等js里內置的類都是顯示轉換,
6.轉換為小數格式字串:toFixed()
能夠把數值轉換為字串,并顯示小數點后的指定位數
7.parseInt是一個全域方法,它可以把值轉換為整數,轉換的程序如下:
①先決議位置0處的字符,如果不是有效數字,則直接回傳NaN
②如果位置0處的字符是數字,或者可以轉換為有效數字,則繼續決議位置1處的數字,如果不是有效數字,則直接回傳位置0處的有效數字,
③以此類推,按照從左到右的順序,逐個分析每個字符,知道發現非數字字符位置,
④parseInt()將把前面分析合法的數字字符全部轉換為數值并回傳,
注意:浮點數中的點對于parseInt()來說屬于非法字符,因此不會轉換小數部分的值,
8.parseFloat()也是一個全域方法,它可以把數值轉換為浮點數,即它能夠識別第一個出現的小數點,而第二個小數點被視為非法,決議程序與parseInt()方法相同,
9.簡單型別和參考型別:js中把資料分為簡單型別值和參考型別值
簡單型別值:存盤在堆疊記憶體中,按值訪問,可直接訪問,訪問速度快,占據空間小,
參考資料型別:存盤在堆記憶體中,由多個值組成的資料我們稱為參考資料型別(object,array),占據空間大,按共享訪問,
五、運算子
1.運算式一定會有回傳值:return
2.①“+、-、*、/、%” 數字運算子
②“>”大于號,求前面的值是否大于后面的值,
③“<”小于號,求前面的值是否小于后面的值,
④“>=”大于等于號,求前面的值是否大于等于后面的值,
⑤“<=”小于等于號,求前面的值是否小于等于后面的值,
⑥“!”非,取反,求反,
⑦“||”或,如果前面的值為true則不執行后面的,否則執行
⑧“&&”與,必須前后的值都為true,否則得到的是false
⑨“++”累加,每次給初始值+1
⑩“- -”累減,每次給初始值-1
3.三元運算語法:運算式或值 ? 為真的時候執行的結果 : 為假的時候執行的結果
三元運算有回傳值?
4.“++”在前和“++”在后的區別:++在前先計算后賦值,++在后先賦值后計算,
5.“,”運算子,用來一次宣告多個變數,
6.物件:無序資料的集合,使用鍵值對(屬性名和屬性值)的形式存盤資料,用一對花括號包裹,鍵值對之間用逗號隔開,
7.陣列:有序資料的集合,使用[ ]包裹值,每個值都是單獨的,多個值用逗號隔開,使用陣列里的資料用下標(索引)取,下標從0開始,
六、陳述句
1.陳述句規范
①分號“;”,請在每條可執行的陳述句后面添加分號,
②JavaScript會忽略多個空格,您可以向腳本添加空格,以增加可讀性,
③JavaScript陳述句可以用花括號組合在代碼塊中,
2.if . else陳述句:
if (){真的} else {假的}(if求真,判斷圓括號內的結果是不是真的,花括號表示代碼塊執行js陳述句的)
3.if和三元運算的區別:
①三元運算必須是“?”和“:”成對的;if可以單獨使用,
②三元運算有回傳值,if沒有,
4.switch:流程控制陳述句的有一種寫法,
語法:使用switch關鍵字呼叫,()里是匹配的值,匹配項是每一個case,寫在{}內,每個case都應該給break用于終止向下執行,如果沒有可匹配的項,最后應該給一個默認匹配項default,
5.switch、if和三元運算都是等同的一類語言,都是條件執行陳述句,語法不同,switch相對而言更加優雅,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/550808.html
標籤:JavaScript
上一篇:HTML input type="number" 隱藏默認的步進箭頭
下一篇:返回列表
