【问题标题】:Angular JS : How to create a Array dynamically by reading a JSON ArrayAngular JS:如何通过读取 JSON 数组来动态创建数组
【发布时间】:2017-04-26 16:56:51
【问题描述】:

我有一个如下的 JSON

[
        {
                "id": 1000,
                "name": "Open"
        },
        {
                "id": 1000,
                "name": "Ravi"
        },
        {
                "id": 1000,
                "name": "POOO"
        }]

    On click of a button I am trying to create a Array by reading all the names from the Array 

    I have tried as follwoing 

        var myapp = angular.module('myapp', []);
myapp.controller('FirstCtrl', function($scope)
{
        $scope.formData = function()
        {
                var aa = $scope.tickets.length;
                $scope.products = $scope.tickets.name;
                alert($scope.products);
        };
        $scope.tickets = [
        {
                "id": 1000,
                "name": "Open"
        },
        {
                "id": 1000,
                "name": "Ravi"
        },
        {
                "id": 1000,
                "name": "POOO"
        }]
});

目前我越来越不确定,请告诉我如何执行此操作
提前致谢

http://jsfiddle.net/9fR23/434/

我不想使用 for 循环来阅读传统风格。

能否请您推荐一个专业的方法。

【问题讨论】:

    标签: angularjs


    【解决方案1】:

    如果您不使用循环读取,则可以使用Underscore.js

    通过使用Underscore.js,您可以执行以下操作。在此之前,您需要查看this link,了解如何在角度控制器中使用下划线。

    var result = _.map([{ id: 1, name: "vinit"},{ id: 2, name: "jaimin"}], function (v) {
        return v.name;
    });
    
    alert(JSON.stringify(result));
    

    jsfilddle

    【讨论】:

      【解决方案2】:

      您可以循环读取数组中的所有数据并将它们推送到新数组:

      $scope.formData = function()
      {
          $scope.products = [];
          var aa = $scope.tickets.length;
          angular.forEach($scope.tickets, function(value, key) {
              $scope.products.push(value.name);
          });
          alert($scope.products);
      };
      

      Updated fiddle

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-08-03
        • 1970-01-01
        • 1970-01-01
        • 2019-02-22
        • 1970-01-01
        • 2020-07-26
        • 1970-01-01
        相关资源
        最近更新 更多