js 函数基础(方便复习使用)

// 函数声明:
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
*/

  

posted @ 2018-03-05 17:55  First·林肯  阅读(554)  评论(0编辑  收藏  举报