gpt4 book ai didi

javascript - 为什么{来源 :target} when destructing in Javascript?

转载 作者:行者123 更新时间:2023-12-01 01:17:27 26 4
gpt4 key购买 nike

为什么会这样const {source:target} = obj当在 Javascript 中解构为新变量而不是相反时?

我从 const {target:soruce} = obj 开始询问会更符合...

const source = 'x';
const obj = {target:source};

...我会犯更少的错误。 :)

最佳答案

你的问题很有趣。所以,我想谈谈我的看法:

const { 源:目标 } = 对象

1)两边应该相等:

x = x

2)所以,两者都是对象:

{ source } = object

3)如果对象未定义怎么办?

{ source } = object || { source: 'the value - not an alias' }

4) 提取的是键,而不是值

const { source } // and source will hold the value

5) 如果使用 as 会怎样?

const { source as target } = object
// like we have
// export { source as target } from 'module'

嵌套对象键会非常困难:

const obj = { source: { target: 'another value' } }
const { source: { target: asValue } } = obj

你能想到如果我们使用as吗?

const { source of target as asValue } // makes life no easier.

但是使用导入/导出语法只有一个考虑因素。

import { a, b, c } from 'module'

但不是:

import { a, b, c } from 'module', 'another-module', 'third-module'

希望,这现在有意义了!

如果您实际上无法使用解构语法,那么您可以查看并按照我的 another post 中提供的链接进行操作。 .

关于javascript - 为什么{来源 :target} when destructing in Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54611156/

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