Javascript 以ES6方式从对象克隆特定密钥

Javascript 以ES6方式从对象克隆特定密钥,javascript,ecmascript-6,key,clone,Javascript,Ecmascript 6,Key,Clone,ES6(ES2015)如何从特定键创建新对象 没有重复按键两次 例如: var orginalObject= {a:1,b:2,c:3,d:4} // not working var extractedObj = { orginalObject.a , orginalObject.b} // extractedObj == {a:1, b:2} 我这样问是因为EC6作为许多新的复制和创建对象的闪亮方式,您可以使用多个let语句使其变得非常清晰和ES6-y 让oldObj={a:1,b:2,c

ES6(ES2015)如何从特定键创建新对象 没有重复按键两次

例如:

var orginalObject= {a:1,b:2,c:3,d:4}
// not working
var extractedObj = { orginalObject.a , orginalObject.b} // extractedObj == {a:1, b:2}

我这样问是因为EC6作为许多新的复制和创建对象的闪亮方式,您可以使用多个
let
语句使其变得非常清晰和ES6-y

让oldObj={a:1,b:2,c:3,d:4},
纽奥布
{
设{a,b}=oldObj
newObj={a,b}
}

console.log(newObj)/=>{a:1,b:2}
您可以使用多个
let
语句使它变得非常尖锐和ES6-y

让oldObj={a:1,b:2,c:3,d:4},
纽奥布
{
设{a,b}=oldObj
newObj={a,b}
}


log(newObj)/=>{a:1,b:2}
它已经足够简单了。ES2015中没有什么特别的东西可以让它更简洁(在字符或语句数量方面)。是什么让你认为ES6会提供任何东西来“简化”它?@FelixKling虽然在问题文本中没有提到,但OP在使用问题模式时出现语法错误,否?@guest271314:为什么这比执行
var newObj={a:oldObj.a,b:oldObj.b}更好/更简单直接?“对我来说恰恰相反。”费利克斯克林在这里过早地将这个问题重新标记为重复问题。这两个问题之间的区别是:“如何编写函数”。如果现在的问题是一个重复的问题,那么它就不是相关问题,它已经足够简单了。ES2015中没有什么特别的东西可以让它更简洁(在字符或语句数量方面)。是什么让你认为ES6会提供任何东西来“简化”它?@FelixKling虽然在问题文本中没有提到,但OP在使用问题模式时出现语法错误,否?@guest271314:为什么这比执行
var newObj={a:oldObj.a,b:oldObj.b}更好/更简单直接?“对我来说恰恰相反。”费利克斯克林在这里过早地将这个问题重新标记为重复问题。这两个问题之间的区别是:“如何编写函数”。如果现在的问题是重复的,那就不是相关问题。我只是修正了措辞,你能读懂我的心思。“夏普和ES6-y”是一个更好的描述。也许“急躁”是最好的。但它会污染当前的范围。这很好,但这是实现这一点的最佳方式?@Perymon在这种情况下,“最佳”的定义是什么?在评估哪个是“最佳”时,您会比较哪些选项?当
javascript
表示真实用例的内容没有出现在最初的问题中时,另一个用户如何确定您的“真实用例”的“最佳”内容。老实说,我可能会选择第二个;使用ES6对象解构似乎并不能使生成的代码更简洁或更具可读性。我只是修正了这个措辞,你可以读懂我的想法。“夏普和ES6-y”是一个更好的描述。也许“急躁”是最好的。但它会污染当前的范围。这很好,但这是实现这一点的最佳方式?@Perymon在这种情况下,“最佳”的定义是什么?在评估哪个是“最佳”时,您会比较哪些选项?当
javascript
表示真实用例的内容没有出现在最初的问题中时,另一个用户如何确定您的“真实用例”的“最佳”内容。老实说,我可能会选择第二个;使用ES6对象分解似乎不会使生成的代码更简洁或更具可读性。