继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

js笔记二十五之函数中的return及匿名函数

倚天杖
关注TA
已关注
手记 357
粉丝 47
获赞 187

js中的返回值 return

function sum(){    var total = null;   
    for (var i = 0; i < arguments.length; i++) {        var cur = Number(arguments[i]);
        !isNaN(cur)?total += cur:null;
    }
}
sum(10,20);console.log(total) //Uncaught ReferenceError: total is not defined  闭包的保护机制导致私有作用域会保护里面的私有变量

返回值是一个函数提供的一个出口: 我们如果想在外面使用函数私有的一些信息,,那么就需要通过return,把这些信息返回出来

function sum(){   var total = null;   
   for (var i = 0; i < arguments.length; i++) {       var cur = Number(arguments[i]);
       !isNaN(cur)?total += cur:null;
   }   return total;   // return后面跟着的都是值(返回的都是值): 此处不是把total变量返回,而是把total存储的值返回}console.log(sum(10,20)); // -> 30// sum: 函数本身// sum(): 让函数先执行,代表的是当前函数返回的结果
 function sum(){     var total = 0;     // return;
 } console.log(sum()) // -> undefined
 // 如果函数中没有return或者return后面啥也没有,默认返回的结果也是undefined
function sum(){   var total = 0;   return;   console.log(total) // 在函数体中遇到return后,return后面的代码都不再执行}console.log(sum())
function sum(){    var total = null;   
    for (var i = 0; i < arguments.length; i++) {        var cur = Number(arguments[i]);
        !isNaN(cur) ? total += cur : null;
    }    return total;
}var total = sum(10,20,30); // 外面是全局下的total 和 函数中的total没有必然联系console.log(total)

匿名函数

没有名字的函数
函数表达式
自执行函数

  • 函数表达式

oBox. = function(){    // 把一个没有名字的函数(有名字也无所谓)作为值赋值给一个变量或者一个元素的某个时间等: 函数表达式}
  • 自执行函数

(function(n){    // 创建函数和执行函数放在一起了,创建完成立马执行: 自执行函数})(10)// 自执行函数 1~function(n){
    
}(10);// 自执行函数 2-function(n){
    
}(10);// 自执行函数 3+function(n){
    
}(10);// 自执行函数 4!function(n){
    
}(10)

         

             




作者:uplyw
链接:https://www.jianshu.com/p/e3d8e6627451


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP