JavaScript 函数

2021-05-10 19:51:03 更新

B站关联视频教程:https://www.bilibili.com/video/BV1RA41137yd?p=9

目录

一、什么是函数

二、如何定义自定义函数 function(){}

    1、无参数无返回值

    2、无参数有返回值

    3、有参数无返回值

    4、有参数有返回值

三、函数内部的变量与函数外部变量的区别

    1、变量的作用范围【局部变量,全局变量】

    2、js中加“var”和不加“var”的区别



内容

一、什么是函数

JavaScript 函数是被设计为执行特定任务的代码块
JavaScript 函数会在某代码调用它时被执行。

  • <script>
  •     function funsum({
  •         document.write(3);
  •     }
  •     funsum();// 3
  • </script>

二、如何定义自定义函数 function(){}

  • function 函数名(参数1,参数2,……){
  •     函数体内容
  • }


函数可以有参数,也可以没有参数,可以有返回值,也可以没有返回值【只是一个动作函数】。


1、无参数无返回值:

  • <script>
  •     function funsum({
  •      document.write(1+2+3+4+5);
  •     }
  •     funsum();//15
  • </script>


2、无参数有返回值:

  • <script>
  •     function funsum({
  •       return 1+2+3+4+5;
  •     }
  •     document.write(funsum());// 15
  • </script>


3、有参数无返回值:


  • <script>
  •     function funsum(a,b{
  •       document.write(a+b);
  •     }
  •     funsum(1,2);//3 ,函数是一个动作函数,没有返回值。
  • </script>


4、有参数有返回值:

  • <script>
  •     function funsum(a,b{
  •         return a+b;// 该函数返回 p1 和 p2 的和
  •     }
  •     document.write(funsum(1,2));//3
  • </script>

函数存在的意思是模块化,能够被多次调用。所以有参数有返回值的定义方式是常用定义。因为只要传递参数过去,就有结果了。

三、函数内部的变量与函数外部变量的区别
1、变量的作用范围【局部变量,全局变量】

局部变量:函数内部使用var定义的变量。

全局变量:函数外部定义的变量【不管有没有使用var定义】


2、 js中加“var”和不加“var”的区别

  • 函数外部的变量,加var是全局变量,不加var类似全局变量【它并不是声明了一个全局变量,而是创建了一个全局对象的属性】

  • 函数内部的变量,加var声明的是局部变量,不加var的是对全局变量的引用。

  •     <script>
  •         var a=1//全局变量
  •         b=2;//全局变量 全局变量的一个属性
  •         function js({
  •             a=3;//a是对全局变量的引用,赋值
  •             document.write(a);
  •         }
  •         js();// 3
  •     </script>
  •     
  •       <script>
  •         var a=1//全局变量
  •         b=2;//全局变量 全局变量的一个属性
  •         function js({
  •             var a=3;//局部变量
  •             document.write(a);
  •         }
  •         js();// 3
  •     </script>
  •     
  •     
  •       <script>
  •         var a=1//全局变量
  •         b=2;//全局变量 全局变量的一个属性
  •         function js({
  •             var a=3;//局部变量
  •         }
  •         js();
  •         document.write(a);// 1
  •     </script>
  •     
  •      <script>
  •         var a=1//全局变量
  •         b=2;//全局变量 全局变量的一个属性
  •         function js({
  •              a=3;//a是对全局变量的引用,赋值。
  •         }
  •         js();
  •         document.write(a);//3
  •     </script>

在严格模式中,为未声明的标识符赋值将会抛引用错误。所以。在函数外声明的变量,也建议使用var 定义。


关注公众号,了解更多it技术(it问答网