Javascript 面临打印arraylist的问题
代码: 下面是相关的CSP列表 需要按如下方式打印: 但上面的代码只打印了最后一个9999999999。它不会打印剩余的值,所以请帮助我。 提前感谢。试试这段代码Javascript 面临打印arraylist的问题,javascript,angularjs,Javascript,Angularjs,代码: 下面是相关的CSP列表 需要按如下方式打印: 但上面的代码只打印了最后一个9999999999。它不会打印剩余的值,所以请帮助我。 提前感谢。试试这段代码 $scope.associatedCspaList = [ "1000100010001000", "2000200020002000", "3000300030003000", "9999100020003000", "9999999999999999" ]; $scope.clientId = $scope.
$scope.associatedCspaList = [
"1000100010001000",
"2000200020002000",
"3000300030003000",
"9999100020003000",
"9999999999999999"
];
$scope.clientId = $scope.associatedCspaList[0].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.systemId = $scope.associatedCspaList[1].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.principleId = $scope.associatedCspaList[2].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.agentId = $scope.associatedCspaList[3].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
试试这个代码
$scope.associatedCspaList = [
"1000100010001000",
"2000200020002000",
"3000300030003000",
"9999100020003000",
"9999999999999999"
];
$scope.clientId = $scope.associatedCspaList[0].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.systemId = $scope.associatedCspaList[1].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.principleId = $scope.associatedCspaList[2].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
$scope.agentId = $scope.associatedCspaList[3].replace(/(\d{4})/g, '$1 ').replace(/(^\s+|\s+$)/, '');
我认为cspaObj变量应该在循环中
var AssociatedCSList=[
"1000100010001001",
"2000200020002000",
"3000300030003000",
"9999100020003000",
"9999999999999999"
];
var associatedCspaListResponse=[];
angular.forEach(关联CSList、函数(值、键){
var cspaObj={};
var输出=”;
cspaObj.clientId=value.slice(0,4);
cspaObj.systemId=value.slice(4,8);
cspaObj.principleId=value.slice(8,12);
cspaObj.agentId=value.slice(12,16);
//预期产量
console.log(cspaObj.clientId+“”+cspaObj.systemId+“”+cspaObj.principleId+“”+cspaObj.agentId);
//回应
关联CSPAListResponse.push(cspaObj);
});
控制台日志(“响应”);
console.log(AssociatedCSAlistResponse)代码>
我认为cspaObj变量应该在循环中
var AssociatedCSList=[
"1000100010001001",
"2000200020002000",
"3000300030003000",
"9999100020003000",
"9999999999999999"
];
var associatedCspaListResponse=[];
angular.forEach(关联CSList、函数(值、键){
var cspaObj={};
var输出=”;
cspaObj.clientId=value.slice(0,4);
cspaObj.systemId=value.slice(4,8);
cspaObj.principleId=value.slice(8,12);
cspaObj.agentId=value.slice(12,16);
//预期产量
console.log(cspaObj.clientId+“”+cspaObj.systemId+“”+cspaObj.principleId+“”+cspaObj.agentId);
//回应
关联CSPAListResponse.push(cspaObj);
});
控制台日志(“响应”);
console.log(AssociatedCSAlistResponse)代码>
您只创建了一个对象,并多次将其添加到列表中。这会导致所有引用都指向同一对象,因此具有相同的值。每次创建一个新对象:
var associatedCspaList = responseData.data.associatedCspaList;
responseData.data.associatedCspaList = [];
angular.forEach(associatedCspaList, function (value, key) {
var cspaObj = {}; // Create the object here, not outside
cspaObj.clientId = value.slice(0, 4);
cspaObj.systemId = value.slice(4, 8);
cspaObj.principleId = value.slice(8, 12);
cspaObj.agentId = value.slice(12, 16);
responseData.data.associatedCspaList.push(cspaObj);
});
您只创建了一个对象并多次将其添加到列表中。这会导致所有引用都指向同一对象,因此具有相同的值。每次创建一个新对象:
var associatedCspaList = responseData.data.associatedCspaList;
responseData.data.associatedCspaList = [];
angular.forEach(associatedCspaList, function (value, key) {
var cspaObj = {}; // Create the object here, not outside
cspaObj.clientId = value.slice(0, 4);
cspaObj.systemId = value.slice(4, 8);
cspaObj.principleId = value.slice(8, 12);
cspaObj.agentId = value.slice(12, 16);
responseData.data.associatedCspaList.push(cspaObj);
});
运行下面的代码
var cspaObj = {};
var associatedCspaList = responseData.data.associatedCspaList;
responseData.data.associatedCspaList = [];
associatedCspaList.map(function(value, key) {
cspaObj.clientId = value.slice(0, 4);
cspaObj.systemId = value.slice(4, 8);
cspaObj.principleId = value.slice(8, 12);
cspaObj.agentId = value.slice(12, 16);
cspaObj.main = cspaObj.clientId + ' ' + cspaObj.systemId + ' ' + cspaObj.principleId + ' ' + cspaObj.agentId;
responseData.data.associatedCspaList.push(cspaObj.main);
});
console.log('data', responseData.data.associatedCspaList);
运行下面的代码
var cspaObj = {};
var associatedCspaList = responseData.data.associatedCspaList;
responseData.data.associatedCspaList = [];
associatedCspaList.map(function(value, key) {
cspaObj.clientId = value.slice(0, 4);
cspaObj.systemId = value.slice(4, 8);
cspaObj.principleId = value.slice(8, 12);
cspaObj.agentId = value.slice(12, 16);
cspaObj.main = cspaObj.clientId + ' ' + cspaObj.systemId + ' ' + cspaObj.principleId + ' ' + cspaObj.agentId;
responseData.data.associatedCspaList.push(cspaObj.main);
});
console.log('data', responseData.data.associatedCspaList);
作为一个简单的解决方案,你可以循环这个字符串中的所有字符,并在4个字符后加一个空格。请检查我的答案。作为一个简单的解决方案,你可以循环这个字符串中的所有字符,并在4个字符后加一个空格。请检查我的答案。@rahul pawar:我这边的工作很好。请检查。感谢您的解决方案…:):)@拉胡尔·帕瓦尔:在我这边,一切都很好。请检查。感谢您的解决方案…:):)感谢您的解决方案……:):)感谢您的解决方案……:):)