一、函數(shù)的寫法
1. 定義功能
function 關(guān)鍵字 代表定義功能(函數(shù))
func 功能的名字, 滿足標(biāo)識符的條件即可蔚润,可以修改的
1. 必須是數(shù)字磅氨、字母、下劃線嫡纠、$ 組成
2. 不能重名
3. 不能以數(shù)字開頭
( ) 不能省略
{ } 代表功能中的代碼烦租,相當(dāng)于封裝到了當(dāng)前功能中
// 原因: 定義功能 是在所有語句之前 執(zhí)行的,系統(tǒng)規(guī)定的
function func()
{
console.log("如來神掌除盏!");
}
func( ) // 調(diào)用
- 使用功能
格式: 功能名( )
func( )
彈出一個輸入框: prompt 就是1個函數(shù)叉橱,只不過這個是系統(tǒng)寫的,我們直接使用
prompt( )
3.函數(shù)的第2種情況: 帶輸入的
(a) 代表 【調(diào)用者】傳遞給函數(shù)的 信息者蠕,自動存儲到空間a(自動分配的)中
function func(a)
{
document.write(a)
}
// 調(diào)用時赏迟,將數(shù)據(jù) 傳遞給功能 func
func(100)
func(90)
4.函數(shù)的第2種情況: 帶輸入的, 有多個輸入
(a, b) 代表 【調(diào)用者】傳遞給函數(shù)的 信息,自動存儲到空間a, b(自動分配的)中
function func(a, b)
{
// a: "哈哈" b: 90
// a + b ===> "哈哈" + 90 ===> "哈哈90"
document.write(a + b)
}
// 調(diào)用時蠢棱,將數(shù)據(jù) 傳遞給功能 func
// 傳遞數(shù)據(jù)的規(guī)定是: 100 ==> a 90 ===> b 一一對應(yīng)的
func("哈哈", 90)
5.函數(shù)的輸出
function func()
{
return 5;
// return 代表返回。整個函數(shù)立即終止甩栈,后面的代碼全部忽略不計
}
var a = func();
document.write( a );
// func() 代表調(diào)用功能泻仙,它的【整體的值】是 return 后面【表達(dá)式的值】
// document.write( func() )
6.函數(shù)的運用
思路:
// 帶飯: 傳入錢 和 飯的類別(面條 或 蓋飯) 面條: 80一碗,炸醬面 蓋飯: 120一碗量没,魚香肉絲
// 要求: 用 return 返回買的菜
// money 錢
// type 類別
function fan(money, type)
{
if (type == "面條")
{
if (money >= 80)
{
return "炸醬面";
}
else
{
return "錢不夠玉转,你自己去買吧!"
}
}
else if (type == "蓋飯")
{
if (money >= 120)
{
return "魚香肉絲";
}
else
{
return "錢不夠殴蹄,你自己去買吧究抓!"
}
}
}
document.write(money);
★練習(xí)解答
/ 編寫函數(shù),求一個正數(shù)的n次方
// 正數(shù)的n次方 ==> 正數(shù) * 正數(shù) * 正數(shù) * ... * 正數(shù) n次
function func(a, n)
{
var sum = 1;
for (var i = 1; i <= n; i++) // 循環(huán)n次
{
sum = sum * a;
}
return sum; // 返回結(jié)果
}
document.write( func(-2, 3) );
var x = -1, n = 3
// 說明: 傳入正數(shù)袭灯,求出對應(yīng)的n次方刺下,否則 返回-1
function num1(x, n)
{
if (x > 0)
{
return Math.pow(x, n);
}
else
{
// document.write("請輸入正數(shù)!");
return -1;
}
}
document.write( num1(x, n) );
function func(a, n)
{
return( Math.pow(a,n) )
}
func(2, 3)
// 2^3 + 3^2
var a = func(2,3) + func(3,2)
document.write(a)
// 【練習(xí)】 編寫函數(shù)稽荧,求4個數(shù)的平均值橘茉,要求使用返回值
function avg(a, b, c, d)
{
var r = (a + b + c + d) / 4;
return r;
}
document.write( avg(4,3,2,1) );
求1個數(shù)的階乘:
嘆號表示階乘,如4! = 1 * 2 * 3 * 4
function jiecheng(a)
{
var sum = 1;
for (var i = 1; i <= a; i++)
{
sum = sum * i;
}
return sum;
}