Javascript ES 6关于常量的新语法
我是ES6新手,我知道一些事情,但对以下事情仍然有点困惑,有人能给我提供一些关于这些新语法的细节吗:Javascript ES 6关于常量的新语法,javascript,angularjs,ecmascript-6,Javascript,Angularjs,Ecmascript 6,我是ES6新手,我知道一些事情,但对以下事情仍然有点困惑,有人能给我提供一些关于这些新语法的细节吗: getControlBindings((control, context) => { control, context, setAnswer, ajaxAction }) 以下只是代码的示例片段: 1. const { action, stage, conditions } = this.control.ajaxInfo; 到底叫什么?这条语句到底能做
getControlBindings((control, context) => {
control,
context,
setAnswer,
ajaxAction
})
以下只是代码的示例片段:
1. const { action, stage, conditions } = this.control.ajaxInfo;
到底叫什么?这条语句到底能做什么?我在控制台中试过,它执行时没有任何错误。但当我试图跟踪这3个常量时,它显示为未定义
2. const getControlBindings = (control, context) => ({
control,
context,
setAnswer,
ajaxAction
});
它是一个带有一些=和=>符号的函数,那么这类新语法呢:
getControlBindings((control, context) => {
control,
context,
setAnswer,
ajaxAction
})
那么这两种功能之间的主要区别是什么?请帮助我理解这一点。1)这意味着您的this.control.ajaxInfo
对象必须包含具有这些名称的属性,这些属性将被分解为左侧的变量。
欲了解更多信息,请参阅
var控件={
行动:"a",,
阶段:"b",,
条件:“c”,
}
const{action,stage,conditions}=控件;
控制台日志(操作)
1)这意味着您的this.control.ajaxInfo
对象必须包含具有这些名称的属性,这些属性将被分解为左侧的变量。
欲了解更多信息,请参阅
var控件={
行动:"a",,
阶段:"b",,
条件:“c”,
}
const{action,stage,conditions}=控件;
控制台日志(操作)代码>找到了一个适合你的方法。希望能有帮助
在上再看一次,发现对你有好处。希望能有帮助
再来一杯
是ES2016/ES6中的对象破坏示例。在本例中,3个单独的常量,其参数值与等号左侧提到的同名参数值相同。i、 行动、阶段、条件
var controls = {
action: 'GET',
stage: 'Test'
}
const { action, stage} = controls;
console.log(action) // Outputs GET
是箭头函数的示例。在第一种情况下,我们创建一个箭头函数getControlsBinding,它接受控件和上下文参数,并返回一个带有
{control,
context,
setAnswer,
ajaxAction }
另一个定义类似于将arrow函数作为参数传递给getControlsBinding函数。注意,这里有一个轻微的语法问题,您需要包装
{control,
context,
setAnswer,
ajaxAction }
用括号括起来,如下所示
({control,
context,
setAnswer,
ajaxAction })
以下是一些从ES2015/ES6开始的好材料
箭头功能:
对象销毁:
是ES2016/ES6中的对象破坏示例。在本例中,3个单独的常量,其参数值与等号左侧提到的同名参数值相同。i、 行动、阶段、条件
var controls = {
action: 'GET',
stage: 'Test'
}
const { action, stage} = controls;
console.log(action) // Outputs GET
是箭头函数的示例。在第一种情况下,我们创建一个箭头函数getControlsBinding,它接受控件和上下文参数,并返回一个带有
{control,
context,
setAnswer,
ajaxAction }
另一个定义类似于将arrow函数作为参数传递给getControlsBinding函数。注意,这里有一个轻微的语法问题,您需要包装
{control,
context,
setAnswer,
ajaxAction }
用括号括起来,如下所示
({control,
context,
setAnswer,
ajaxAction })
以下是一些从ES2015/ES6开始的好材料
箭头功能:
对象销毁:,谢谢@Suren Srapyan,哇,解释得很好,意思是:1。这个语法从一个对象创建3个常量,对吗?2.此语法创建常量对象。1)是,2)否,它不创建常量对象,但它创建常量getControlBindings
函数,因此它不能再引用其他函数。它是附加到当前函数的。返回的对象不会是cont。我有点困惑,现在我得到了它。感谢@Suren Srapyan.2)它们在Javascript中没有被称为lambda。它们是箭头函数。谢谢@Suren Srapyan,哇,很好的解释,它的意思是:1。这个语法从一个对象创建3个常量,对吗?2.此语法创建常量对象。1)是,2)否,它不创建常量对象,但它创建常量getControlBindings
函数,因此它不能再引用其他函数。它是附加到当前函数的。返回的对象不会是cont。我有点困惑,现在我得到了它。感谢@Suren Srapyan.2)它们在Javascript中没有被称为lambda。它们是箭头函数。