JS函数的基础知识与应用方法!!!

函数的基础知识

函数的定义 function name(params){};
function 定义函数的关键字
name: 函数名字,根据自己的喜好起名
params:参数可以有参数也可以没有,通常将这里面的参数称为形式参数,简称“形参”
{}:这里面写的是函数体,也就是我们编写的业务逻辑
return :将一些我们需要的函数值结果从函数体中返回出来
注意:函数可以有参数,也可以没有,可以有返回值。也可以没有
写函数的意义在于使用,我们写了函数就要去用它,我们使用的过程叫做函数的调用;
函数的调用方法是 name(参数);在函数的最外面书写调用指令,这里的参数代表的是实际参数,简称“实参”;
总结:函数只是一个工具,就是封装一段代码,然后多次调用;上面函数的书写格式就是将一段代码进行封装;

作用域问题

作用域:变量起作用的地方叫做作用域
作用域分为全局作用域和局部作用域
全局作用域:变量可以在全局中使用,变量被称之为全局变量
局部作用域:局部作用域中的变量只能在某个函数体内部使用,变量被称之为局部变量
作用域链:内部函数在访问某个变时,采取的链式查找方法(就近原则)决定该变量的值,这种结构被称之为作用域链
arguments:对象,用来保存传递过来的实参,类似于数组,格式如下:
 // function add2(){
        //     console.log(arguments[2]); //undefined
        //     var sum = arguments[0] + arguments[1] + arguments[2]+arguments[3]+arguments[4];
        //     console.log(sum);
        // }
        // add2(10,20,30,40,50)
        // add2(10,20,30,40,50,60,70)
        // add2(10,20)
即使我们在定义函数时,没有定义,没有形参,也可以通过arguments在函数体内部接收 实参

函数的表达式

函数共有两种表达式,一种是普通方式,一种是匿名方式
普通方式
 // function add(num1,num2) {
        //     var sum = num1 + num2;
        // };
        // add(10,20);
匿名方式(函数表达式)
 var add = function(num1,num2){
            var sum = num1 + num2;
            return sum;
        };
        var res = add(20,30);
        console.log(res);

注释:函数表达式声明方式与变量相似 只不过变量里存储的值较为特殊 ,是一个函数,而且函数没有名称,被称之为匿名函数;

函数的提升

// fun1();
        // var fun1 = function() {
        //     console.log('我是一个匿名函数');
        // }
        // 运行结果 报错: Uncaught TypeError: fun1 is not a function

        // 上面一段代码  相当于执行了以下这段代码
        // var fun1;
        // fun1(); 
        // fun1 = function(){
        //     console.log('我是一个匿名函数');
        // }
在这里fun1();未进行声明,系统会对未声明的函数变量进行声明;此时函数的定义会被提升到作用域的最前面
虽然普通函数有函数提升,但是不建议这样去书写,一般是先声明,在进行调用
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值