此代码显示“显示未定义。”
import {a} from './dis.js';
show = () =>{
console.log(a);
}
show();
但这可行
import {a} from './dis.js';
const show = () =>{
console.log(a);
}
show();
这是为什么?
最佳答案
这与箭头功能无关。这是严格代码的本质。您可以看到我在严格模式下工作时的示例。 ES6
模块怎么样,它们自动处于 strict
模式。
'use strict';
show = 4;
您正在尝试将箭头函数的引用分配给 undefined variable show
。 Defined 意味着您已经使用关键字 var
、let
或 const
来定义变量。
在第一个代码部分中,您没有使用这些关键字声明它,它尝试查找变量,但没有找到使用该名称定义的任何内容。所以它会抛出错误。
在第二个代码部分中,您定义了一个名为 show 的变量,然后为其分配了对箭头函数的引用。所以一切都好。
关于javascript - 为什么使用导入/导出时箭头函数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47669046/