一、 JavaScript的函數(shù)
1.定義函數(shù)
在使用函數(shù)前要定義函數(shù),定義函數(shù)要放在<script></script>之間,并用關(guān)鍵字function,語(yǔ)法如下:
function 函數(shù)名(形式參數(shù)1,形式參數(shù)2,.....形式參數(shù)n){
//語(yǔ)句
}
定義函數(shù)規(guī)則:
(1)使用function關(guān)鍵字,function后面是函數(shù)名,不需要說(shuō)明返回值類型。
(2) 函數(shù)的命名規(guī)則與變量名的命名規(guī)則一樣。
(3)函數(shù)名之后的“()”可以包含若干參數(shù),也可以選擇不帶參數(shù)。
(4) 最后一對(duì){},包含具體實(shí)現(xiàn)特定功能的若干語(yǔ)句。
2.函數(shù)的參數(shù)
例:
創(chuàng)建函數(shù):
<script type="text/javascript">
function getTotal(salary,bonus){
document.writeln("工資和獎(jiǎng)金的總額:"+(salary+bonus));
}
</script>
函數(shù)參數(shù)的演示:
<body>
<h2>王雨欣:<script type="text/javascript">getTotal(4800,2300);</script>元</h2>
<h2>李思慧:<script type="text/javascript">getTotal(6400,3100)</script>元 </h2>
</body>
3.函數(shù)的返回值
實(shí)現(xiàn)函數(shù)返回值的語(yǔ)句是return,在調(diào)用函數(shù)時(shí),可以將返回值賦給變量。
語(yǔ)法:
return 返回值;
或
var result = 函數(shù)(參數(shù));
- 變量的作用域
變量的作用域只要分為全局和局部?jī)煞N。全局變量在函數(shù)外部聲明的,可以在任何地方包含函數(shù)的內(nèi)部使用。局部變量是在函數(shù)體內(nèi)聲明的,只能在函數(shù)體內(nèi)使用,局部變量隨著函數(shù)的結(jié)束而消失。
注:全局變量和局部變量重名了的話,局部變量?jī)?yōu)先,無(wú)論局部變量的值的改變,全局變量的值也不會(huì)受影響。 - 系統(tǒng)函數(shù)
(1) parseInt函數(shù)
parseInt函數(shù)將字符串轉(zhuǎn)換成整數(shù),從字符串的開(kāi)頭開(kāi)始,在第一個(gè)非整數(shù)位置停止解析,并返回前面讀到的所有整數(shù),如果字符串不以整數(shù)開(kāi)頭,將返回NaN(No a Number :不是一個(gè)數(shù)字)。
(2) parseFloat函數(shù)
返回一個(gè)浮點(diǎn)數(shù)和parseInt函數(shù)類似
(3) isNaN函數(shù)
isNaN函數(shù)用于判參數(shù)是否是NaN(不是數(shù)字) ,如果是NaN,則isNaN返回true,反之返回false。
具體如下:
| 參數(shù) | 結(jié)果 |
|---|---|
| “134” | false |
| “2a34” | true |
| “2.34” | false |
| “ ”(空格) | false |
| “wh” | true |
代碼展示:
1.計(jì)算輸入兩個(gè)文本框的數(shù)字之和,結(jié)果顯示在第三個(gè)文本框中
// html代碼:
<body>
<input type="text" id="op1">+<input type="text" id="op2">=
<input type="text" id="result"><br><br>
<input type="button" value="計(jì)算" onclick="calc()">// 為按鈕加一個(gè)點(diǎn)擊事件,點(diǎn)擊計(jì)算就會(huì)計(jì)算兩數(shù)之和
</body>
// JavaScript腳本代碼:
<script type="text/javascript">
function calc(){ // 聲明函數(shù)
var num1 = document.getElementById("op1").value; //通過(guò)id獲取文本框中的值
var num2 = document.getElementById("op2").value;
if(num1.trim()!=""&&num2.trim()!=""){ // 刪除空格
if(!isNaN(num1)&&!isNaN(num2)){ //判斷兩個(gè)數(shù)是數(shù)字
document.getElementById("result").value = parseFloat(num1)+parseFloat(num2); //實(shí)現(xiàn)相加
}else{
alert("請(qǐng)輸入正確的數(shù)字"); // 條件為假,就不是數(shù)子,那就彈出提示框。
}
}else{
alert("請(qǐng)輸入兩個(gè)操作數(shù)");
}
}
</script>