【问题标题】:Zero as first argument in IIFE [duplicate]IIFE中的第一个参数为零[重复]
【发布时间】:2016-06-04 14:45:03
【问题描述】:

babeljs v6.5.1,

class Foo {}

编译成

"use strict";

var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");

var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var Foo = function Foo() {
  (0, _classCallCheck3.default)(this, Foo);
};

(0, _classCallCheck3.default)(this, Foo); 中的0 有什么意义?

在网上babeljs repl,可能有一个不同的babeljs 版本,那一行就是_classCallCheck(this, Foo);,他们似乎做同样的事情。这两种说法有什么区别?

【问题讨论】:

  • “论点”是我在标题中使用的正确术语吗?我感觉不是,但我不知道正确的术语是什么。

标签: javascript babeljs


【解决方案1】:

0 被忽略。它仅允许逗号运算符评估 _classCallCheck3.default 并在 this 不为 _classCallCheck3 的情况下获取函数。

【讨论】:

    猜你喜欢
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-13
    • 2012-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多