【问题标题】:javascript magic or my failjavascript 魔术或我的失败
【发布时间】:2018-07-18 16:14:55
【问题描述】:

我有一个这样的对象数组

{ 
    img: 'https://i.ytimg.com/vi/dz_jeuWx3j0/default.jpg',
    title: 'The Deep End of Deep Learning | Hugo Larochelle | TEDxBoston',
    id: 'dz_jeuWx3j0',
    viewCount: '133219' 
}

我通过ejs 放入html,data 是我的数组

<% data.forEach((item, i, data) => {
     let str = '
       <div class="row my-3"> 
           <div class="col">
              <img src="' + item.img + '" alt="img" width="150" height="100">
          </div>
       <div class="col">
          <p><a href="http://www.youtube.com/embed/' + item.id + '" target="_blank">' + item.title + '</a></p>
          <p>' + item.viewCount + ' views</p>
       </div>
    </div>'; %>
   <%- str %>
<% }); %>

我不知道为什么,但有时这段代码显示正确viewCount,有时我得到undefined,其余属性显示正确(idimgtitle)。谁能解释一下怎么回事?

【问题讨论】:

  • 您好,viewCount 可能没有值。您需要在代码中处理它:If item.viewCount
  • @Terrance00 所有对象都有viewCount 的值
  • 如果viewCount是0,这个值是否可能是未定义的?也许可以将项目打印到控制台以确保 - 另外,如果数字存在,您可以将数字解析为文本(谷歌)!

标签: javascript google-api youtube-api ejs google-api-js-client


【解决方案1】:

Google API 不会返回 null 值,因此如果出于某种原因 viewCount 返回 null,那么它们只会将该参数返回给您。

我也不能说他们是否会返回 0 我已经看到如果计数为 0,他们的一些 api 不会返回计数。

除了在您的代码中检查它之外,您无法做任何更改。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-22
    • 2011-08-29
    • 2017-12-16
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    • 2020-08-12
    相关资源
    最近更新 更多