- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想知道的是;对于我在这里尝试做的事情,是否有一个更简单的语法快捷方式。
我在循环期间有一个大型 JSON 对象,如下所示:
let line = {
first_name: ...,
last_name: ...,
title: ...,
email: ...,
facebook_account: ...,
linkedin_account: ...,
twitter_account: ...,
instagram_account: ...,
snapchat_account: ...
};
然后我将此有效负载分解为更小的对象:
let profile = {
first_name: line.first_name,
last_name: line.last_name,
title: line.title,
email: line.email
};
let social = {
facebook_account: line.facebook_account,
linkedin_account: line.linkedin_account,
twitter_account: line.twitter_account,
instagram_account: line.instagram_account,
snapchat_account: line.snapchat_account
};
ES6 是否为我提供了一种方法来减少每个属性(即first_name、facebook_account 等)的重复?属性名称对于它们的分解方式不一定很明显 - 它基于我们的数据模型。
这是大量重复的手动工作。我想知道我是否遗漏了一些 ES6 的魔力,或者其他什么,可以让这个问题变得更美好。我并不是真的在寻找带有机器学习算法的 super 聪明的递归循环......如果可能的话,只是更短的语法。 :)
最佳答案
您可以使用对象析构:
让 {variables} = obj
和单个变量赋值:
让 obj2 = { 变量 }
变量可以是多个,并用逗号分隔。
析构时:let {name, date, another} = obj;
分配时:let obj2 = { name, date, another }
let line = {
first_name: "Zak",
last_name: "Frisch",
title: "my Title",
email: "myemail@whatever",
facebook_account: "fb",
linkedin_account: "li",
twitter_account: "tweet",
instagram_account: "ia",
snapchat_account: "sc"
};
let {first_name, last_name, title, email, facebook_account, linkedin_account, twitter_account, instagram_account, snapchat_account} = line;
let profile = {
first_name,
last_name,
title,
email
};
let social = {
facebook_account,
linkedin_account,
twitter_account,
instagram_account,
snapchat_account
};
console.log(profile, social);
关于ES6 中的 JavaScript 对象文字 - 将大对象解构为较小对象的语法糖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48792188/
对于NumericVector ,我可以将一个较小的 NumericVector 进行子集化通过使用 IntegerVector包含要子集化的位置。 例如假设x<-c(1,2,2,3,4,5) , i
我的 javascript 文件以配置开始... require.config({ baseUrl: 'scripts', paths: { 'code-mirror'
我的应用程序应该可以使用插件或通常称为糖的方式进行扩展。我会将它们放在 appname.app/Contents/sugars/sugarname.appnamesugar 下 这些是 bundle
我一直在尝试使用 Rcpp 在 C++ 中获取 vector 的等级。我使用了其他糖功能,例如 is_na(); C++中rank R函数有没有类似的糖函数。 Rcpp/ 中是否还有任何可用的 R 糖
我通过 Android Studio 使用 Sugar ORM 进行 Android 开发。 但我想我有一个非常相似的问题。如何将一个/多个结果查询显示为字符串或整数?我的实体看起来像这样: publ
入门读物: Prototypes as "classes" OO JS 按照上述模式,我创建如下库/API var Proto = { constructor: function () {
我在应用程序的第一个版本中使用了 SugarORM。现在,我正在开发第二个版本,它向数据库中添加了新表。 根据 SugarORM documentation “Sugar 会自动为新实体创建表,因此您
我是一名优秀的程序员,十分优秀!