天天看點

JavaScript

直接寫在script标簽内

<code>&lt;script type="text/javascript"&gt;内容&lt;/script&gt;</code>

單獨寫一個js檔案,在html中引入這個js檔案,通過script的src屬性引入

<code>&lt;script type="text/javascript" src="js檔案相對路徑"&gt;(空内容)&lt;/script&gt;</code>

變量類型

數值類型:number

字元串類型:string

對象類型: object

布爾類型: boolean

函數類型: function

特殊的值的含義

undefined-----&gt;未定義

null----------&gt;空值

NAN-----------&gt;not a number 非數值

變量的定義格式

var 變量名;

alert();------&gt;彈出一個警示彈窗

typeof();-----&gt;傳回參數的類型

等于 : ==

全等于:===

等于是簡單的字面值相等,全等于不僅字面值相等,資料類型也要相等

js中,所有的變量都可以作為一個boolean類型使用

是以在進行邏輯運算時,隻有0、null、undefined、""(空串)才是false

與&amp;&amp;運算

當表達式全為真時,傳回最後一個表達式的值

當表達式的值為假時,傳回第一個為假的表達式的值

或||運算

當表達式全為假時,傳回最後一個表達式的值

隻要有一個表達式為真,就會傳回第一個為真的表達式的值

數組定義

var 數組名 = [];

var 數組名 = [1,"abc"];

js中,隻要通過數組下标指派(隻是指派會,讀不會),最大的下标就會給數組擴容,不存在越界

通過function定義

function 函數名(形參清單){函數體};

形參不需要類型,之直接寫變量名---function fun(a,b){}

第二種定義

var 函數名 = function(形參清單){函數體}

js中函數不支援重載,否則會覆寫之前的函數

建立方式

var 對象名 = new object();

對象名.屬性名=指派;

對象名.函數名=function(){}

var 對象名={

屬性名:指派,

函數名:function(){}

}

常用的事件

onload 加載完成事件

頁面加載完成後,常用于做頁面js代碼初始化

onclick單擊事件

常用于按鈕的點選響應操作

onblur失去焦點事件

常用于輸入框失去焦點後驗證其輸入内容是否合法

onchange内容發生改變事件

常用于下拉清單和輸入框内容發生改變後操作

onsubmit表單送出事件

常用于表單送出前,驗證所有表單項是否合法

事件注冊

事件使用前需要先注冊綁定

靜态注冊

通過html标簽的事件屬性直接賦予事件響應後的代碼

動态注冊

先通過js代碼得到标簽的dom對象,再通過dom對象.事件名=function(){}賦予事件響應後的代碼

固定寫法:window.onload = function(){ 事件響應代碼 }

dom對象

document是js提供的一個對象,表示整個html頁面文檔

document.getElementById("id名")可以擷取到某個控件的id

onload事件

加載頁面是就會觸發的事件。(測試發現,寫在body中的alert彈窗相比于其他script标簽中的alert,總是最後一個彈出執行)

<code>&lt;body onload="alert('原來要寫到body屬性裡面!!!')"&gt;</code>

onclick事件

靜态注冊<code>&lt;button onclick="函數名"&gt;&lt;/button&gt;</code>

動态注冊與上面例子一樣

onblur事件

console.log()可以實作在網頁控制台列印資訊

onchange事件

與其他事件類似

onsubmit事件

動态注冊類似