JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基于原型的語言,
內置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言
組成部分:
ECMAScript:js基礎語法(規定 關鍵字 運算符 語句 函數等等...)
BOM:瀏覽器對象模型
DOM:文檔對象模型
其實可以放在html中的任何地方,且多個不限
js的數據類型:
原始類型:(5種)
Null
String
Number
Boolean
Undefined
通過 typeof運算符可以判斷一個值或者變量是否屬于原始類型,若屬于原始類型,他還可以判斷出屬于那種原始類型
typeof 變量 | 值;
若變量為null,使用typeof彈出的值 object
使用typeof的返回值
undefined - 如果變量是 Undefined 類型的 (備注:Undefined類型只有一種,那就是undefined)
boolean - 如果變量是 Boolean 類型的
number - 如果變量是 Number 類型的
string - 如果變量是 String 類型的
object - 如果變量是一種引用類型或 Null 類型的
引用類型:
函數定義格式(2種):
函數調用的時候:
函數名(參數)
js中的事件:
常見的事件:
單擊: onclick
表單提交: onsubmit 加在form表單上的 οnsubmit="return 函數名()" 注意函數返回值為boolean類型
頁面加載: onload
js事件和函數的綁定:
方式1:
通過標簽的事件屬性
方式2:
給元素派發事件
document.getElementById("id值").οnclick=function(參數){....} (備注:相當于匿名)
document.getElementById("id值").οnclick=函數名
注意:
內存中應該存在該元素才可以派發事件
a.將方式2的js代碼放在html頁面的最下面
b.在頁面加載成功之后在運行方式2的js代碼 onload事件.
案例1-表單驗證
案例2-輪播圖片
需求:
每隔3秒圖片更新一下
技術分析:
bom中window對象的定時器方法
定時器:
var id=setInterVal(code,毫秒數):每隔指定的毫秒數執行一次函數 周期
var id=setTimeout(code,毫秒數):延遲指定的毫秒數之后 只執行一次函數
清除定時器:
clearInterval(id);
claerTimeout(id);
類似輪播實現
運算符:
比較運算符: > >= < <=
若兩邊都是數字 和java一樣
若一般為數字,另一邊為字符串形式的數字,將字符串形式的數字轉換成數字在進行比較 3>"2"
若一般為數字,另一邊為字符串,返回一個false 3>"hello"
兩邊都是字符串的時候,比較ascii
等性運算符 == ===
== :只判斷值是否相同
===:不僅判斷是否相同,還要判斷類型是否相同
語句:
if語句 和java一樣
for while 語句和java一樣
switch 和java一樣(區別,switch 后面跟字符串. 還可以跟變量)