首页 > 解决方案 > 尝试将每个带有逗号分隔值的元素也作为数组元素推送

问题描述

我有以下 json 对象。

$scope.myDataList = [
  {name:"one,two"},
  {name:"three"},
  {name:"four"},
  {name:"five,eight,nine"}
]

我正在迭代列表并推送数组中的元素,如下所示。

$scope.myArray = new Array();
angular.forEach($scope.myDataList, function (value, key) { 
  $scope.myArray.push(value.name); 
});

我也想在数组中推送每个带有逗号分隔值的元素。示例:
当我打印$scope.myArray[0]时,它会打印one,two.
但预期的结果是我想打印onefor $scope.myArray[0]twofor $scope.myArray[1],三个 for $scope.myArray[2]

每个用逗号分隔的值我也想作为数组元素推送。
我尝试如下但不起作用。

var array = $scope.myArray.split(',');

演示:http ://plnkr.co/edit/q36BQeqsj5GVNkP4PPhq?p=preview

标签: javascriptangularjs

解决方案


您需要将结果拆分name并将结果连接到数组:

angular.forEach($scope.myDataList, function (value, key) { 
  $scope.myArray = $scope.myArray.concat(value.name.split(',')); 
});

推荐阅读