在对象赋值解构Javascript中使用冒号
Posted
技术标签:
【中文标题】在对象赋值解构Javascript中使用冒号【英文标题】:Use of Colon in object assignment destructuring Javascript 【发布时间】:2019-01-28 06:02:54 【问题描述】:使用 React.js 和 React 路由器
import React, Component from 'react';
const PrivateRoute = ( component: Component, ...rest ) => (
<Route ...rest render= />
)
* component: Component, ...rest *
..rest 是使用扩展语法,但 *component: Component*
是做什么的
【问题讨论】:
它创建了一个对象。它将从 react 导入的Component
类分配给新创建的对象中的键 component
。 IE。 const newObj = component: ComponentClass
【参考方案1】:
在 ES6 中,这会将值分配给一个名为 foo
的新变量
let obj =
name: 'Some Name',
age: '42',
gender: 'coder'
;
let name: foo, ...rest = obj;
console.log(foo, rest) // foo: 'Some Name', rest: age: 42, gender: 'coder'
//
在这种情况下,name
将不会被定义
见assigning to new variable names
【讨论】:
是“foo”键“name”的新值还是“name”的新键名?令人困惑。 @vikramvi 这里的 foo 将是一个包含值“Some Name”的变量。以上是关于在对象赋值解构Javascript中使用冒号的主要内容,如果未能解决你的问题,请参考以下文章
Javascript 对象解构赋值是不是使用 const、let 或 var?