有条件地在返回语句中包含 json 字段
Conditionally include json field inside return statement
所以,我遇到了一个问题,如果我找不到值或未定义,我通常会返回空字符串。这样:
return {
_method: 'update',
link: get(media, 'link', ''),
caption: get(media, 'caption', '')
};
其中get()
是一个 lodash 函数,如果它在提供的路径中找不到值,它只会返回一些东西(在本例中为空字符串)。
但是如果字段不存在,我现在不需要返回任何内容,我尝试了
return {
_method: 'update',
get(media, 'link', '') ? link: media.link : '',
get(media, 'caption', '') ? link: media.caption : '',
};
但这不是有效的语法。
如果您不能拥有该字段,则不要即时创建对象。使用类似以下内容:
obj = {};
// add static values here.
obj["_method"] = 'update';
// dynamic now
if (get(media, 'link', ''))
obj["link"] = media.link;
if (get(media, 'caption', ''))
obj["caption"] = media.caption;
// And finally return the obj.
return obj;
这是我能想到的最好的方法。
相关文章:
- 将工厂作为本地文件的Angular JS,文件中包含JSON
- 在“加载更多”按钮函数中包含 JSON 数据
- 我必须从下面的url中获取数据,其中包含json格式的数据
- 如何使用jQuery在我们的页面中包含json文件
- 如何从html响应解析javascript数组(包含JSON对象作为元素)
- 有条件地在返回语句中包含 json 字段
- 使用 YouTube API 获取包含 JSON Feed 的视频中的所有评论
- 在包含 JSON 数据的表中实现无限滚动
- 打开包含 JSON 数据的新页面,而无需刷新页面
- 是否可以强制用户的浏览器发出(并遵循)正文中包含 JSON 的 GET 请求
- 重复附加的 html,其中包含 json 数据
- 在 jquery 中设置动态回退,每个都包含 JSON 数据
- 对包含 json 的字符串使用 ng-repeat
- $.getJSON没有'不起作用,但在脚本中包含JSON对象起作用
- 如何将数组编码为包含json的函数
- 如何使用Javascript读取包含Json字符串的文本文件
- 在静态html页面中包含json文件(不托管在服务器上)
- 如何在带有beforeSend的AJAX Post中包含JSON对象
- 如何在node.js中包含json文件
- 如何使用node.js调用API,并在主体中包含JSON字符串