Jos*_*igo 9 javascript declaration destructuring ecmascript-6
我正在使用解构来声明一些像这样的变量:
const { a, b, c } = require('./something'),
{ e = 'default', f = 'default'} = c;
Run Code Online (Sandbox Code Playgroud)
有没有办法把它变成单行?我尝试过类似的东西:
const { a, b, c = { e = 'default', f = 'default'} } = require('./something');
Run Code Online (Sandbox Code Playgroud)
但它给了我一个错误:
SyntaxError:无效的简写属性初始值设定项
Mic*_*ski 12
只需替换=为::
const {a, b, c: {e = 'default', f = 'default'}} = require('./something')
Run Code Online (Sandbox Code Playgroud)
演示:
const { a, b, c: { e = 'default', f = 'default'} } = {a: 1, b: 2, c: {e: 3}}
console.log(`a: ${a}, b: ${b}, e: ${e}, f: ${f}`)Run Code Online (Sandbox Code Playgroud)
它打印:
a: 1, b: 2, e: 3, f: default
Run Code Online (Sandbox Code Playgroud)
Evi*_*nta 11
如果对象中没有c,则上述代码将不起作用
const { a, b, c: { e = 'default', f = 'default'}} = {a: 1, b: 2}
console.log(`a: ${a}, b: ${b}, e: ${e}, f: ${f}`)Run Code Online (Sandbox Code Playgroud)
const { a, b, c: { e = 'default', f = 'default'} ={} } = {a: 1, b: 2}
console.log(`a: ${a}, b: ${b}, e: ${e}, f: ${f}`)Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3607 次 |
| 最近记录: |