我有一个代表表单字段的 javascript 对象。其中大约 70% 的字段必须复制到某些对象中才能发送到服务器,其他字段用于 UI 使用。目前,我通过手动为每个字段创建分配来克隆对象,这会导致结构不太好,如下所示。请注意,我将使要复制的部分的字段名称保持相同。
var contData = {
ContainerType: data.ContainerType,
ProjectIds: data.ProjectIds,
PrivateToProjects: data.PrivateToProjects,
DimensionType:data.DimensionType,
MetricsX: data.MetricsX,
MetricsY: data.MetricsY,
Parent:data.Parent,
ContainerName:data.Prefix
};
编码对象克隆部分的最佳方法是什么,只需指定要克隆/不克隆的字段列表,例如一些有用的辅助函数?
我还使用 Angular 和 jquery。
ES6 之后,你可以
let { ContainerType, ProjectIds } = data // the fields you want
let partiallyCopy = { ContainerType, ProjectIds }
console.log(partiallyCopy) // { ContainerType: "...", ProjectIds: "..." }
如果您需要大多数字段,您可以
let { ContainerType, ProjectIds, ...rest } = data // the fields you don't want
let partiallyCopy = rest
console.log(partiallyCopy) // the object excludes ContainerType and ProjectIds
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)