一、概述
- 用途:為html頁(yè)面添加交互行為五续。
- 位置:通常直接嵌入到html頁(yè)面中洒敏。推薦寫到<head></head>中。
- 執(zhí)行:解釋器疙驾,也稱為JavaScript引起凶伙,是瀏覽器的一部分。
- 開發(fā)工具:任何網(wǎng)頁(yè)開發(fā)工具都可以荆萤。
- 特點(diǎn):
1)腳本語(yǔ)言:沒有預(yù)先編譯的過程镊靴,邊解釋邊執(zhí)行。
2)弱類型:非強(qiáng)類型链韭,定義變量的時(shí)候偏竟,不用指定變量的類型,變量的類型根據(jù)值得類型來決定敞峭。
3)跨平臺(tái):不依賴于操作系統(tǒng)踊谋,僅僅依賴瀏覽器。 - 注意:
1)不用瀏覽器使用JavaScript編程旋讹,可能會(huì)有差異殖蚕。
2)要遵循W3C DOM標(biāo)準(zhǔn),兼容性好沉迹。 - 歷史
1)1995年 網(wǎng)景(Netscape)
2)是ECMAScript標(biāo)準(zhǔn)的一種體現(xiàn)睦疫,由ECMA組織發(fā)展和委會(huì)。
3)最新版:ES6(ES2015) - 調(diào)試工具(F12)
二鞭呕、編寫JavaScript
- 把JavaScript代碼寫到<script>標(biāo)簽中蛤育。
- <script>標(biāo)簽可以放置到網(wǎng)頁(yè)的任何位置。
- 變量
1)聲明變量:var a;
2)向未聲明的變量賦值,編寫會(huì)自動(dòng)聲明瓦糕。
3)變量區(qū)分大小寫底洗。
4)再次聲明變量,變量的值不會(huì)重置或清除咕娄。
var a = 10;
//…
var a;
5)變量的命名規(guī)則與java相同亥揖,最長(zhǎng)255字符。 - 五種原始數(shù)據(jù)類型:使用typeof 變量名圣勒,輸出變量類型费变。
1)undefined:未初始化的變量的值,值就一個(gè):undefined灾而。
2)boolean:布爾類型胡控,值true和false扳剿。
3)number:表示整數(shù)和浮點(diǎn)數(shù)旁趟。
4)string:字符串類型,值用單引號(hào)或雙引號(hào)括起來庇绽。
5)null類型:唯一值null锡搜,typeof null 輸出:object - 類型轉(zhuǎn)換
1)parseInt(value)
parseInt(3.14|"3.14"|"3.14abc") =>3
parseInt("abc3.14") => NaN(表示 not a number,不是一個(gè)數(shù)字)
2)parseFloat(value)
parseFloat("3.14"|"3.14abc") =>3.14
3)Number(value):把給定的值轉(zhuǎn)換為數(shù)字瞧掺,它轉(zhuǎn)換整個(gè)值耕餐,而不是部分值。 - 算術(shù)運(yùn)算符:+ - * / % ++ --辟狈,與java相同肠缔。
- 賦值運(yùn)算符、邏輯運(yùn)算符哼转、比較運(yùn)算符明未、三元運(yùn)算符, 與java相同壹蔓。
- 函數(shù):
1)語(yǔ)法:
function 函數(shù)名(參數(shù)列表){
語(yǔ)句;
return 值;
}
2)調(diào)用方式:
a)在script中直接調(diào)用趟妥。
b)通過事件調(diào)用。
<input typt="button" onclick="函數(shù)名(是參列表)"> onclick:?jiǎn)螕羰录?br> 補(bǔ)充:
document.forms[0].num1.value
1)document:文檔對(duì)象佣蓉,內(nèi)置對(duì)象披摄,不用創(chuàng)建,直接使用勇凭。
2)forms:所有表單的集合疚膊。
3)forms[0]:表示第一個(gè)表單。
4)num1:表單元素的name屬性值虾标。
5)value:表單元素的值寓盗。
從文本框取值:
var n = document.form[0].num1.value;
為文本框賦值:
document.form[0].num1.value = "10";
eval(字符串表達(dá)式):能夠?qū)Ρ磉_(dá)式進(jìn)行解析,并計(jì)算表達(dá)式的值,并返回贞让。
例如:
var s = "1 + 2";
eval(s) =》返回3
- 為元素添加事件處理程序
1)<input typt="button" value="btn1" onclick="函數(shù)名(實(shí)參列表)">
2)<script>
document.forms[0].btn1.onclick = 函數(shù)名;
</script>
注意:
1)執(zhí)行上面的代碼周崭,要保證document.forms[0].btn1已經(jīng)存在。
2)不能寫成: document.forms[0].btn1.onclick = 函數(shù)名();這樣寫表示馬上執(zhí)行該函數(shù)喳张,而我們需要的是在按鈕被單擊的時(shí)候調(diào)用該函數(shù)续镇。
3)使用匿名函數(shù)(函數(shù)沒有名稱):只能調(diào)用一次
document.forms[0].btn1.onclick = function(){
//函數(shù)體語(yǔ)句。
}; - javasc中函數(shù)沒有重置的概念销部。
- arguments對(duì)象
1)js的函數(shù)可以接收任意個(gè)數(shù)的參數(shù)摸航,通過arguments對(duì)象訪問,該對(duì)象類似于數(shù)組舅桩,可以使用下標(biāo)來訪問參數(shù)酱虎。
例如:arguments[0]:代表傳遞過來的第一個(gè)參數(shù)。
2)使用arguments對(duì)象的length屬性擂涛,得到方法調(diào)用的時(shí)候读串,傳遞過來的參數(shù)個(gè)數(shù)。
例如:arguments.length 實(shí)參的個(gè)數(shù)
3)使用函數(shù)對(duì)象的length屬性撒妈,得到該方法定義的時(shí)候恢暖,命名參數(shù)的個(gè)數(shù):
例如:
function t(a,b){
}
t.length 得到形參的個(gè)數(shù)。 - prompt("提示文字","默認(rèn)值"):讓用戶輸入值狰右,返回用戶輸入的字符串杰捂。
點(diǎn)擊取消按鈕,返回null棋蚌,沒有輸入內(nèi)容嫁佳,點(diǎn)擊確定按鈕,返回空串("") - 得到表單對(duì)象的方法:
1)document.forms[index]
2)document.表單元素的name值
3)document.getElementById(表單對(duì)象的id值) - 得到表單元素的方法:
1)表單對(duì)象.表單元素的name值
2)document.getElementById(表單元素的id值)