这是我的 json:
[
{
"name": "1QQQJohnQQQ11_22_1998",
"age" : "ads"
},
{
"name": "2QQQEvaQQQ05_01_1989",
"age" : "ads"
},
{
"name": "3QQQCasperQQQ02_16_1994",
"age" : "ads"
},
{
"name": "4QQQBeanQQQ30_12_1996",
"age" : "ads"
}]
我从该表中创建了一个表,我要做的就是将“QQQ”从名称中分离出来,并将其更改为 3 个字符串(例如“4”、“Bean”、“30_12_1996”), 如何在 js 文件中执行此操作,将每个字符串归因于变量(例如 type = "4"、name = "Bean"、date = "30_12_1996)。 我的js文件:
var app = angular.module('app', []);
app.service('service', function($http, $q){
var deferred = $q.defer();
$http.get("filejson.json").then(function(data){
deferred.resolve(data);
});
this.getNames = function(){
return deferred.promise;
}
});
app.controller('MainCtrl', function($scope, service){
var promise = service.getNames();
promise.then(function(data){
$scope.names = data.data;
console.log($scope.names);
});
//*what i try to do (it didn't works):
var type = names.name.split('QQQ')[0];
var name= names.name.split('QQQ')[1];
var date= names.name.split('QQQ')[2];
//*
});
最佳答案
您可以使用 JavaScript map
函数将数组从一种格式映射到另一种格式,并使用字符串 split
方法。
var a = [
{
name: "1QQQJohnQQQ11_22_1998",
age : "ads"
},
{
name: "2QQQEvaQQQ05_01_1989",
age : "ads"
},
{
name: "3QQQCasperQQQ02_16_1994",
age : "ads"
},
{
name: "4QQQBeanQQQ30_12_1996",
age : "ads"
}];
var result = a.map(function (value, index, array) {
varsplitValue = value.name.split("QQQ");
value["SNo"] = varsplitValue[0];
value["personName"] = varsplitValue[1];
value["dob"] = varsplitValue[2];
return value;
} );
result
包含调用map函数后的数组。
result[0].SNO
将显示第一人称 (1) 的 SNO。
result[0].personName
将显示第一个人名 (John)。
result[0].dob
将显示第一人称的出生日期 (11_22_1998)。
关于javascript - 将字符串赋予变量 Angular Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41292032/