JS函数、函数表达式、阶乘

JS函数、函数表达式

1、函数的定义

函数的作用:在出现大量程序相同的时候,就可以封装一个函数,让程序可以重复利用,提高效率

函数的定义:通俗的说,函数就是像是css的类名一样,在书写类里面的样式的时候,其实就相当于函数的定义,类名的多次调用,就是函数的调用;

/* 先定义再执行 */
function fn(){
    alert('小明');
}
/* 函数的调用 函数名() 
fn() 函数自执行
*/
fn();

2、匿名函数

匿名函数不能单独调用,单独调用没有任何意义

document.onclick = function(){
    console.log('楠楠');
}

3、函数表达式

函数表达式:有运算符参与运算,也可以加括号执行

/*最重要的  函数自执行*/
(function(){
    console.log('楠楠!');
})();
​
/*赋值运算*/
var a = function(){
    console.log('哈哈哈!');
};
​
/* 
    下面的函数写法认识一下就可以 
    下面的函数写法都时把函数转换成表达式
*/
​
+function(){
    console.log('楠楠');
}();
​
 -function(){
    console.log('楠楠');
}();
​
 !function(){
    console.log('楠楠');
}();
​
 ~function(){
    console.log('楠楠');
}();
​
/* 比较奇怪 */
(fucntion(){
    console.log('好久好久');
 }());

4、函数的参数

函数里面是可以传变量的

形参:写在函数块里面的叫做形参(一定是变量);

fn() = fn(var a)

实参:实际的数值,用来传给形参,在JS里面实参什么类型都可以;

形参和实参是一 一对应的

function fn(a,b){
    console.log(a+b);
}
fn(11,12);//23

不定参数 arguments(对象)----类数组(存放传进去的所有实参)

/* 计算所有传入的实参 */
function fn(){
    var num = 0;
    for(var i=0;i<arguments.length;i++){
        num += arguments[i];
    }
    console.log(num);
}
​
fn(1,2,3);
fn(1,2,3,4);
fn(1,2,3,4,5);

函数的返回值:当函数这些完毕后,默认返回undefined;

rreturn 能改变函数的返回值

function fn(a,b){
    return a+b;
}

5、阶乘

/* 阶乘 */
function fn(a) {
    if(a<=1){
        return 1;
    }
    return fn(a-1)*a;
}
/* 三目运算 */
function fn(a){
    return a<=1? 1: fn(a-1)*a;
}
​
console.log(fn(5));//120
​
/* 用for循环来实现*/
var num = 1;
for( var i=1; i<=5; i++ ){
    num *=i;
}
console.log(num);//120

猜你喜欢

转载自blog.csdn.net/qq_41741971/article/details/89715114