// 函数声明:
function bbq(){
// .....
}
// 函数表达式:
// 1、命名函数表达式
var test = function abc(){
document.write("abc")
}
test()
// 2、匿名函数表达式
var demo = function (){
document.write("demo")
}
demo()
//a,b在这里是属于 形参
这里写的形参 相当于在函数里面 的var a var b
function sub(a,b){
//每一个函数体内部都有一个 实参列表
// arguments 相当于所有的 实参集合
//形参的长度可以用 函数本身的名字.length
sub.length
}
//在这里就属于 实参
sub(1,3)
//1、写一个函数,告知所选的小动物的叫声
var smallAnimals = function(s){
for (var i = 0; i < arguments.length; i++) {
if(arguments[i]=="狗"){
console.log("汪汪")
}else if(arguments[i]=="鸡"){
console.log("咕咕")
}else if (arguments[i]=="青蛙") {
console.log("呱呱")
}
};
switch (s) {
case "狗":
console.log("汪汪")
case "鸡":
console.log("咕咕")
case "青蛙" :
console.log("呱呱")
default:
console.log("啥子也没得")
break;
}
}
smallAnimals("狗")
//2、写一个函数实现加法计数器
var sum = function(){
var result = 0
for (var i = 0; i < arguments.length; i++) {
result += arguments[i]
};
return result
}
console.log(sum(1,2,3,4,5,6,7,8,9))
//3、定义一个函数,输入数字,逆转并输出汉字形试
var reverse_s = function(value){
var result = ''
for (var i = arguments.length-1 ; i >=0 ; i--) {
result+=cheng(arguments[i])
};
return result
}
var cheng = function(abs){
switch(abs){
case 1:
return "壹"
case 2:
return "贰"
case 3:
return "叁"
default:
console.log("啥子也没得")
break;
}
}
console.log(reverse_s(1,2,3))
//4、算出来一个数的阶乘
/*递归重点
1、找规律。
2、找出口
*/
var jc = function(n){
if(n==1 || n==0){
return 1
}
return n * jc(n-1)
}
console.log(jc(5))
/*
思路
jc(5) ==> 5 * jc(4)
jc(4) ==> 4 * jc(3)
jc(3) ==> 3 * jc(2)
jc(2) ==> 2 * 1 ---n=1 则2*1
*/