如何使用 Angular js 或 java 脚本将逗号分隔的字符串分解为单个索引数组

Posted

技术标签:

【中文标题】如何使用 Angular js 或 java 脚本将逗号分隔的字符串分解为单个索引数组【英文标题】:How to explode comma separated string to single index array using angular js or java script 【发布时间】:2018-11-16 03:34:44 【问题描述】:

我有一个像 15,16,17 这样的字符串值,我想使用 angular js 1.x 或 java 脚本将其转换为 ["15","16","17"]。请帮助我

我的 Angular js 代码是

<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>

<div ng-app="myApp" ng-controller="myCtrl">

Array items
<code style="display: block; padding: 8px;">selected | json</code>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) 
    $scope.selected = [];
    $scope.selected = ["15","16","17"];
    $scope.existvalues=15,16,17;
    //$scope.selected=$scope.existvalues;
    /*Instead of above static code i want  assign a comma separated string  dynamic value like 
     this  $scope.existvalues=15,16,17;
     How i  convert and assign $scope.existvalues to $scope.selected array like ["15","16","17"] 
    */
     
);
</script>

</body>
</html>

【问题讨论】:

javascript Equivalent to php Explode()的可能重复 【参考方案1】:

使用split() 将字符串转换为数组

var str = "15,16,17"
var strArr = str.split(',');
console.log(strArr); // gives ["15","16","17"];

或者按照你的例子来表述

$scope.existvalues="15,16,17"; 
$scope.selected = $scope.existvalues.split(',');
console.log($scope.selected); // gives ["15","16","17"]

【讨论】:

【参考方案2】:

对字符串使用Split 方法,它会根据您要求它拆分的内容来拆分字符串(“此处由, 拆分”)并将答案作为数组返回

str =  "15,16,17"
strAsArray = str.split(",")
console.log(strAsArray)

【讨论】:

以上是关于如何使用 Angular js 或 java 脚本将逗号分隔的字符串分解为单个索引数组的主要内容,如果未能解决你的问题,请参考以下文章

如何在运行时以 Angular 2 加载外部 js 脚本?

Angular如何在组件中使用嵌入脚本

使用 javascript 或 angular js 隐藏侧边栏

如何在 Angular.js 中从 DOM 中添加/删除 createElement

如何检测 angular.js 中的 keydown 或 keypress 事件?

如何在 Angular 应用程序中使用 Node.js“Net”类(或其他 TCP 后端)