javascript将变量分配给从对象中提取的键值



我该如何做以下之类的事情

const BigObject = {
"id":"value",
"img":"value",
"name":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value",
}
var User = {id,img,name} = BigObject

其中用户将是类似的对象

{
"id":"value",
"img":"value",
"name":"value",
}

根据我上面的评论。。。

"像…这样的方法。。。const user = (({ id, img, name }) => ({ id, img, name }))(BigObject);。。。其基于立即调用的箭头函数来防止在创建CCD_ 2之后不再需要的附加本地引用">

用箭头函数实现解决方案也可能最接近OP的初衷。。。

const bigObject = {
id: 'value',
img: 'value',
name: 'value',
otherData: 'value',
};
// OP ...how can i do something like the following?..
//
// const user = { id, img, name } = bigObject
// prevent additional module or global
// scope of e.g. `id`, `img`, `name`.
const user = (({ id, img, name }) => ({ id, img, name }))(bigObject);
console.log({ user });

你可以试试:

const {id, img, name} = BigObject;
const User = {id, img, name};

您可以按照以下方式进行操作:

const BigObject = {
"id":"value",
"img":"value",
"name":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value"
}
let {id, img, name, ...rest} = BigObject;
let User = {id,img,name};
console.log(User)

您可以执行类似的操作

const BigObject = {
"id":"value",
"img":"value",
"name":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value",
"otherData":"value",
}
let {id,img,name} = BigObject
const User = {id,img,name}
console.log(User)

最新更新