函数的简介

函数

函数(function)的简介

  • 函数也是一个对象
  • 函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码)
  • 函数中可以保存一些代码在需 要的时候调用

创建一个函数对象
可以将要封装的代码以字符串的形式传递给构造函数(我们在实际开发中很少使用构造函数来创建一个函数对象)

var fun = new Function("console.log('Hello 这是一个函数');");

封装到函数中的代码不会立即执行
函数中的代码会在函数调用的时候执行
调用函数语法:函数对象( )
当调用函数时,函数中封装的代码会按照顺序执行

fun();

使用函数声明来创建一 个函数
语法:
function 函数名([形参1 ,形参2...形参N]){
语句...
}

function fun2(){
    console.log("这是我的第二个函数");
    alert("abcdefg");
    document.write("123456");
}

使用 函数表达式 来创建一个函数
var 函数名 = function( [形参1,形参2. . .形参N]){
语句....
}

var fun3 = function(){
    console.log("匿名函数中封装的代码")
}

函数的参数

定义一个用来求两个数和的函数
可以在函数的( )中来指定一个或多个形参(形式参数)
多个形参之间使用,隔开,声明形参就相当于在函数内部声明了对应的变量
但是并不赋值

function sum(a,b){
    console.log(a+b);
}

在调用函数时,可以在( )中指定实参(实际参数)
实参将会赋值给函数中对应的形参

sum(1,2);
sum(123,456);

调用函数时解析器不会检查实参的类型,
所以要注意,是否有可能会接收到非法的参数,如果有可能则需要对参数进行类型的检查
函数的实参可以是任意的数据类型

调用函数时,解析器也不会检查实参的数量
多余实参不会被赋值

如果实参的数量少于形参的数量,则没有对应实参的形参将是undefined

/*可以使用return来设置函数的返回值
      语法:
          return 值
*/
function sum(a,b,c){
   var d = a + b + c;
   return d;
}

return后的值将会会作为函数的执行结果返回,
可以定义一个变量,来接收该结果

在函数中return后的语句都不会执行

如果return语句后不跟任何值就相当于返回一个undetined,
如果函数中不写return,则也会返回undefined

  • 实参可以是任意的数据类型,也可以是一个对象
    当我们的参数过多时,可以将参数封装到-一个对象中,然后通过对象传递

  • 实参可以是一个对象, 也可以是一个函数

  • sum( )

    • 调用函数
    • 相当于使用的函数的返回值
  • sum

    • 函数对象
    • 相当于直接使用函数对象

返回值的类型

返回值可以是任意的数据类型
也可以是一个对象,可以是一个函数

立即执行函数

立即执行函数
函数定义完,立即被调用,这种函数叫做立即执行函数
立即执行函数往往只会执行一次

(function(a,b){
    console.log("a = "+a);
    console.log("b = "+b);
})(123,456);

枚举对象中的属性

使用for . . . in语句

  • 语法:
    for( var 变量 in 对象 ){
    }

for . . . in语句对象中有几个属性,循环体就会执行几次

for(var n in obj){
    console.log(n);
    //console.log(obj[n]);列举对象中的属性值
}
posted @ 2022-01-12 15:17  苏槿年  阅读(230)  评论(0编辑  收藏  举报