代码之家  ›  专栏  ›  技术社区  ›  jk121960

Javascript是模块中被认为是表达式或声明的函数

  •  -2
  • jk121960  · 技术社区  · 7 年前

    嗨,谢谢你抽出时间。将函数添加为模块的可访问属性并通过return语句公开它时。换句话说,如果您有一个对象并添加一个属性名称:函数(){return;}:“并通过模块或对象的return语句公开它。这是一个表达式还是一个声明?再次感谢

    很抱歉,我今天过得不好,不,我没有参加考试,但我描述得不对。导出模块中声明的函数时,它们是声明还是表达式?谢谢你的耐心

    2 回复  |  直到 7 年前
        1
  •  1
  •   Samuel Hulla    7 年前

    表达式是一组有效的文字、变量、运算符和表达式 计算为单个值的 . 我们把表情区分为

    • 赋值表达式- x = 7
    • 求值表达式- 3 + 4 (x + y)

    虽然我们在这两个表达式背后的目标是不同的,但不管它们是由3个字符组成,还是由一个40行的代码组成*,最终,它们的计算结果都是一个决定性的值,即某个原始值( number string , boolean , null undefined , symbol )或者一个 object


    同时,一份声明很好。。顾名思义。。某物的声明

    var x;
    

    声明 名为x的变量

    function s在 只是 数据类型。所以通过这样做 function foo (){} 我们只需声明一个对象(函数),它位于模块的顶部。


    记住, 声明和表达式不必是某种可能永远不会结合在一起的独立技术

    var obj = {
      foo: function bar() { console.log('baz'); }
    };
    

    包含声明 目标。赋值表达式和函数声明 bar foo 以及函数的表达式 酒吧 它自己。

    或许更容易理解这一点的方法是:

    var x = 7;
    

    我们首先声明一个变量x( var x )它被编译器提升到我们作用域的顶部,然后我们分配它 x = 7; 但作为一条线本身, 它包含声明和表达式

        2
  •  2
  •   Bergi    7 年前

    name: function(){return;} 属性,是一个表达式。