Javascript 这行代码是什么意思?const{quot;intl:{formatMessage},}=this.context
我是react的新手,正在阅读一些代码我发现了这行代码:Javascript 这行代码是什么意思?const{quot;intl:{formatMessage},}=this.context,javascript,reactjs,ecmascript-6,intl,react-intl,Javascript,Reactjs,Ecmascript 6,Intl,React Intl,我是react的新手,正在阅读一些代码我发现了这行代码: const {intl: { formatMessage }, } = this.context 这是一个常量声明,但我不明白 我知道是JS ES6,但我不明白它是干什么用的? 如何检查此常量的值 谢谢您拥有的代码实际上是以下代码的表示形式 const formatMessage = this.context.intl.formatMessage 您可以阅读有关对象分解的内容以了解更多信息。正如人们已经回答的那样。这是对象分解 简单示
const {intl: { formatMessage }, } = this.context
这是一个常量声明,但我不明白
我知道是JS ES6,但我不明白它是干什么用的?
如何检查此常量的值
谢谢您拥有的代码实际上是以下代码的表示形式
const formatMessage = this.context.intl.formatMessage
您可以阅读有关对象分解的内容以了解更多信息。正如人们已经回答的那样。这是对象分解 简单示例:
const contact={name:'John',email:'john@doe.com“}
使用ES6,您可以执行const{email}=contact//电子邮件=联系人。电子邮件
如果要以不同的方式命名变量,则应为:
const{email:mailbox}=contact//相当于mailbox=contact.email代码>
回到原来的问题:{intl:{formatMessage},}=this.context
=>{formatMessage}=this.context.intl=>formatMessage=this.context.intl.formatMessage
这意味着this.context包含与此类似的结构
this.context = {
intl:{
formatMessage: // This has a value let's say "Hello"
},
//Other key-value pairs could be contained in the context object }
这行代码是一种简写语法,告诉您只能从名为“This.context”的大型对象中检索可在“intl”中找到的formatMessage属性。它表示const formatMessage=This.context.intl.formatMessage
,查看更多详细信息谢谢@Rajaprabhu Aravindasamy