js中对象创建问题
let a = '';
let b = '1';
let obj = {
data1: a === ''? null:a,
data2: b,
}
上面代码中,能否直接在obj中判断,如果a为空时,不添加data1,请问有相关的语法吗
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
let a = '';
let b = '1';
let obj = {
data1: a === ''? null:a,
data2: b,
}
上面代码中,能否直接在obj中判断,如果a为空时,不添加data1,请问有相关的语法吗
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(8)
obj是一个对象,data1是obj的属性,data1属性值是一个表达式,没有问题。
没有相关的语法,不过你在可在套一层函数实现需求
一定要在obj对象内部去判断基本无解
常规操作:
不明白为什么非要在对象内部判断,不过既然他都这么问了,就玩点花的。。虽然不是时间安全的
可以试下赋值成undefined,用JSON.parse(JSON.stringify(obj)) 多做一步转换
只能是2种方式:
没有你想要的语法,只能按常规语法生成对象之后再把属性过滤一遍,
或者可以用删除 key 的方法去除多余的属性