【问题标题】:Using javascript get JSON data (from Tumblr)使用 javascript 获取 JSON 数据(来自 Tumblr)
【发布时间】:2011-02-18 18:30:25
【问题描述】:

我正在尝试通过 JSON API 阅读 Tumblr 帖子。

使用他们的 API,数据像这样传回:

var tumblr_api_read= {
 "posts":[
   "id":"1234",
   "regular-title":"This is the title of the post",
   "regular-body":"This is the body of the post"
 ]
}

我无法返回“regular-title”和“regular-body”。

我的 JS 代码如下所示:

var tumblr= tumblr_api_read['posts'];
for (eachPost in tumblr)
{
 var id=posts[eachPost].id; //Works fine
 var regularTitle=posts[eachPost].regular-title; //Returns NaN
}

我假设这是因为 posts[eachPost].regular-title 里面有破折号,但我找不到任何关于如何使它在这种情况下工作的文档!

谢谢。

【问题讨论】:

标签: javascript json tumblr


【解决方案1】:

在您的示例中,javascript 变量名称不能包含特殊字符,例如 -。如果您的属性名称中包含特殊字符,则访问它的唯一方法是使用您用来访问上面的 posts 对象的 [] 方法,该方法为您提供了将属性名称作为字符串传递的选项。

var regularTitle = posts[eachPost]['regular-title'];

【讨论】:

  • 我认为这很容易。谢谢你这么快的回复。它工作得很好。 :)
  • 当您开始使用 javascript 时,很容易迷上这个。很高兴能帮上忙:)
【解决方案2】:

更详细地说,您实际上是以点表示法引用regular-title,就像它是一个对象一样。但它实际上是一个数组,这就是为什么即使属性值没有上面提到的破折号它也不起作用的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2010-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多