javascript - 获取对象的属性

标签 javascript

我有一个对象评论。在某些情况下它可能是未定义的,而在其他情况下它看起来像

{
  id: 1,
  ...,
  next_page: 'someurl' // can also be undefined in some cases
}

我需要获取该 next_page 属性(如果存在)或在其他情况下将其设置为 null。我的代码:

let next_page = null;

if (comments && comments.next_page)
  next_page = comments.next_page

它有效,但我觉得有一些更简单的方法。我说得对吗?

最佳答案

它必须为空吗?如果是这样,请选择:

const next_page = comments && comment.next_page || null

如果undefined也很好,我建议:

const next_page = comments && comment.next_page

Javascript 的行为有点出乎意料。等号右边的表达式的结果是 undefined如果next_page comment 上不存在,但是comment.next_page如果它确实存在的话。

编辑: 正如另一条评论中指出的: next_page 时要小心是一个虚假值,因为版本 #1 将返回 null ,当 comment.next_page0 .

关于javascript - 获取对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49311597/

相关文章:

javascript - 克隆带有嵌入 div 的 div (row-Bootstrap

javascript - 如何在 react 导航中使标题居中而不受到 headerLeft 的影响?

javascript - 我如何使用单击的 li 选项填充搜索过滤器 lul ,并将其放置在搜索字段中

javascript/jquery 选择行中的最后一个元素

asp.net - 使用 JQuery 或 AJAX 从数据库填充文本框

javascript - 中心导航元素 Bootstrap CSS

javascript - 使用 jQuery 淡出 HTML-Table 中的列 : Why is . fadeTo() 这么慢?

javascript - 拉取第一个输入实例并通过 JS 添加 id

ASP.NET 输入键和表单提交没有 javascript

用于切换密码和文本类型的 Javascript 不起作用