首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在打印JSON数据之前追加字符串

在打印JSON数据之前追加字符串
EN

Stack Overflow用户
提问于 2016-01-01 15:51:43
回答 1查看 93关注 0票数 1

我正在从AJAX调用中获取JSON数据。因此,JSON数据的格式如下-

代码语言:javascript
复制
data[0].scores.sadness

因此,最后一部分“悲伤”是情感之一。我总共有8种情绪。所以,我不想像-

代码语言:javascript
复制
data[0].scores.sadness, data[0].scores.anger

所以,我创建了一个包含所有8种情绪的数组-

代码语言:javascript
复制
var emotions = ['anger', 'contempt', 'disgust', 'fear', 'happiness', 'neutral', 'sadness', 'surprise'];

我使用Jquery动态地创建几个元素,在jQuery的“每个”循环中,我将数组附加到JSON响应中,如下所示-

代码语言:javascript
复制
var emotionPer = $('<div>')
    .text(data[0].scores + "." + emotions[i])
    .appendTo(li);

我面临的问题是,它是打印对象。{情感名称}

例如-

代码语言:javascript
复制
[object] [object].anger or [object] [object].sadness

有没有办法把它解释成-

代码语言:javascript
复制
data[0].scores.anger

这样我就能得到上面的价值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-01 16:08:35

代码语言:javascript
复制
.text(data[0].scores[emotions[i]])

您可以通过两种方式访问对象中的键的值:

  1. obj.key
  2. obj["key"]

--为什么您的方法不起作用:

代码语言:javascript
复制
var obj = {"name":"void", "on":"stackoverflow"};
var key = "on";

obj.on // stackoverflow
obj["on"] // stackoverflow
obj.key // Will be undefined
obj[key] // will be stackoverflow.

我希望这是合理的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34557601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档