美文网首页
NFE函数名变量不可变

NFE函数名变量不可变

作者: 小杰66 | 来源:发表于2021-04-12 08:29 被阅读0次
    var b = 10;
    (function b() {
      b = 20;
      console.log(b)   //function b
    })()
    
    var b = 10;
    (function b() {
      'use strict'
      b = 20;
      console.log(b)   //Uncaught TypeError: Assignment to constant variable.
    })()
    

    原因:上面是一个立即执行的函数表达式(IIFE),而且是一个具名的函数表达式(NFE)。在ECMAScript 标准中要求 NFE 实现两个特性1.只能在函数体内访问函数名变量。2.函数名变量可以理解为常量,不可改变。

    参考链接: https://segmentfault.com/q/1010000002810093

    相关文章

      网友评论

          本文标题:NFE函数名变量不可变

          本文链接:https://www.haomeiwen.com/subject/xndzkltx.html