无法理解示例中的语法

时间:2019-04-16 06:05:07

标签: javascript destructuring

我将这段新代码视为解构示例,但无法弄清部分语法的原因:

const stats = {
    max: 56.78,
    standard_deviation: 4.34,
    median: 34.54,
    mode: 23.87,
    min: -0.75,
    average: 35.85
};

const half = (function() {
    "use strict"; // do not change this line

    return function half({max, min}) {
        return (stats.max + stats.min) / 2.0;
    };
})();

console.log(half(stats)); //shows 28.015

我的问题:

  1. 此语句的作用是:const half = (function() {...})();。声明后立即调用函数吗?

  2. 即使这给出了相同的答案:

    const half = (function() {
        "use strict";
        return (stats.max + stats.min) / 2.0;
     })
    

    为什么会有那么多额外的代码?

  3. 何时在函数内部返回函数?我知道构造函数会一直这样做,但是否则有什么用?

0 个答案:

没有答案