相关疑难解决方法(0)

var functionName = function(){} vs function functionName(){}

我最近开始维护其他人的JavaScript代码.我正在修复错误,添加功能,并尝试整理代码并使其更加一致.

以前的开发人员使用两种声明函数的方法,如果背后有原因,我就无法解决.

这两种方式是:

var functionOne = function() {
    // Some code
};
Run Code Online (Sandbox Code Playgroud)
function functionTwo() {
    // Some code
}
Run Code Online (Sandbox Code Playgroud)

使用这两种不同方法的原因是什么?每种方法的优缺点是什么?有一种方法可以通过一种方法完成,而另一种方法无法完成吗?

javascript syntax idioms function

6645
推荐指数
32
解决办法
98万
查看次数

是否在ES6中使用let或const声明变量?

我已经玩ES6一段时间了,我注意到虽然声明的变量var按预期提升了......

console.log(typeof name); // undefined
var name = "John";
Run Code Online (Sandbox Code Playgroud)

... 用吊装声明letconst似乎有一些问题的变量:

console.log(typeof name); // ReferenceError
let name = "John";
Run Code Online (Sandbox Code Playgroud)

console.log(typeof name); // ReferenceError
const name = "John";
Run Code Online (Sandbox Code Playgroud)

这是否意味着变量声明let或未声明const?这是怎么回事?这个问题letconst这个问题有什么区别吗?

javascript const let hoisting ecmascript-6

240
推荐指数
5
解决办法
5万
查看次数

导出与定义内联或在文件末尾的 es6 默认类?

导出一个 es6 默认类与其定义内嵌与在其定义后的文件末尾之间有什么区别?

以下是我在 React 教程中遇到的两个示例。

前任。1:内联类

export default class App extends React.Component {
    // class definition omitted
}
Run Code Online (Sandbox Code Playgroud)

前任。2:文件结束

class App extends React.Component [
    // class definition omitted
}

export default App; // is this different somehow?
Run Code Online (Sandbox Code Playgroud)

如果没有区别,那么第一个示例似乎更高效和简洁。

javascript ecmascript-6 es6-modules

11
推荐指数
1
解决办法
2063
查看次数

`export default x`和`export {x as default}之间有区别吗?

我理解,使用ES6模块导出时,导出的内容与导入的内容之间会发生绑定,因此当导出的变量发生更改时,导入的变量将演示该更改.

但是,我还读到导入的变量在某些情况下只携带绑定到导出的变量.

我的具体问题是在以下两种情况下导出变量的绑定方式是否存在差异......

// Scenario #1
let a = 5;
export default a;

// Scenario #2
let a = 5;
export { a as default };
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 es6-modules

8
推荐指数
1
解决办法
1156
查看次数

es6模块如何导入自己?

我有一个名为的模块fooModule.在这个模块中,我导入fooModule(本身):

import * as fooModule from './fooModule';

export function logFoo() {
  console.log(fooModule)
}
Run Code Online (Sandbox Code Playgroud)

logFoo()被调用时,我可以看到所有的fooModule的出口.这是如何运作的?

javascript ecmascript-6 webpack es6-module-loader

8
推荐指数
1
解决办法
1162
查看次数

4
推荐指数
1
解决办法
7878
查看次数