javascript - 在 javascript 中检索 JSON 数据时出现问题

标签 javascript json angularjs

我有一个像这样的 Json 架构:

{"THEMES":{
"CATEGORY":
        ["TEST1","TEST2","TEST3","DFSDFSDF"],
"OVER AGAIN":
        ["YOUNG","OLD","GRANPA"],
"AND AGAIN":
        ["AND","ANOTHER","WORD"],
"NEW CATEGORY":
        ["AGAIN","OOPS","CAN","REDBULL"]
}}

嗯,我需要检索 AngularJs Controller 内的键值,检索它的代码如下:

$http.get('json/word_bank.json')
        .success(function (result) {
          $scope.themes = Object.keys(result.TEMAS);
          console.log($scope.themes);

我进入控制台: [“类别”、“再次”、“再次”、“新类别”]

到目前为止一切顺利,但我需要访问 TEST1、TEST2 等键值。 为此我尝试过,例如: console.log($scope.themes[0][0]);

控制台返回字母“C”或“CATEGORY”字符串的第一个字母。其余所有内容都发生这种情况,因此我猜代码正在将我的初始数组转换为字符串元素。我已经在数组上尝试了很多循环或迭代,但我不起作用。我错过了什么吗?

最佳答案

$scope.themes 引用 result.THEMES 对象中的对象键数组。当您调用 $scope.themes[0][0] 时,您将获取键数组“CATEGORY”的第一项,然后获取该字符串“C”的第一个字符。

您将需要对实际主题对象的引用,然后传递主题名称以获取其值。

themesObject[$scope.themes[0]] -> ["TEST1","TEST2","TEST3","DFSDFSDF"]

使用您的代码:

$http.get('json/word_bank.json')
  .success(function(result) {
    $scope.themes = Object.keys(result.THEMES);
    console.log(result.THEMES[$scope.themes[0]]);
  });

关于javascript - 在 javascript 中检索 JSON 数据时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32121960/

相关文章:

javascript - 仅执行 JavaScript 中方法的一部分

javascript - Playfab - 引用错误 : "Promise" is not defined

json - 将模型保存为修改后的值

javascript - 是否可以像在 C# 中一样在 angularjs 中引用范围?

javascript - 使用 GWT 延迟图像加载

由于缓存的 JS 文件,JavaScript 函数无法正常工作

json - 在不使用结构的情况下将 json 转换为 map slice 并将 map slice 转换为 json

javascript - 为什么不使用 javascript 将 json 中的某些详细信息添加到 DOM 中?

javascript - 成功保存 parse.com 后动态更新 ng-repeat 行

javascript - 作用域变量的改变不会影响 View