gpt4 book ai didi

javascript - React 类中的 es6 函数声明

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:47:37 25 4
gpt4 key购买 nike

用 const 声明的函数和不用 let 或 const 声明的函数以及在 ES6 类中以其他方式声明的函数有什么区别?

class App extends Component {

submitFood = () =>{
// some code
}

为什么上面的工作正常但下面的声明给出错误:

class App extends Component {

const submitFood = () =>{
// some code
}

最佳答案

首先:您提供的示例都不是有效的 ES6。 The grammar rules for ES6 classes只允许类体内的方法定义。即

class MyClass {
method1() {}
method2() {}
}

然而,第一个例子是利用 class fields proposal .该提案扩展了现有语法以允许定义表单的属性

class MyClass {
someProperty = value;
}

这些赋值不是在类定义时评估的,而是在实例化时评估的。它是在构造函数中分配属性的语法糖:

class MyClass {
constructor() {
this.someProperty = value;
}
}

你的第二个例子是简单的无效语法,因为没有允许在类字段之前放置 letconst 的语法规则。

请记住,类字段不是变量声明或变量赋值。

关于javascript - React 类中的 es6 函数声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46958612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com