return 的神奇

2019-10-14  本文已影响0人  NewboyNewlife

return的作用:

1.返回函数值:

返回函数中的值,外部调用函数时,则会调用这个值。闭包中就是运用这个属性,调用函数内部的局部变量,以不影响全局变量。

var fn = fn()

    console.log(fn) // underfind

    function fn () {

      document.write('Hello World')

    }

当执行的时候,函数fn()执行了,页面会输出5,但是console出来的却是一个undefined,无论你在fn()函数中写任何东西,变量获取弹出的都是undefined,如果你需要他能够赋值给变量,这时候就需要用到return,

var fn = fn()

    console.log(fn) // Hello world

    function fn () {

      var word = 'Hello world'

      document.write(word)

      return word

    }

2.变量私有化

return的位置不一样,效果也是不一样的。。

var num = 1;

    function fn () {

      num = 2

      return

      function fn () {}  // 相当于 var num = function fn () {},此时var num 将全局变量num私有化,变成了局部变量

    }

    fn()

    console.log(num) // 2

这是return和函数不在一行的时候(),还有return和函数在一行的时候

var num = 1;

    function fn () {

      num = 2

      return function fn () {}  同行代表函数执行到了声明式函数,num依然是全局变量

    }

    fn()

    console.log(num) // 1

上一篇下一篇

猜你喜欢

热点阅读