gpt4 book ai didi

javascript - 为什么它在数组之前显示未定义?

转载 作者:行者123 更新时间:2023-11-30 07:22:07 25 4
gpt4 key购买 nike

我正在使用 angular js 读取 json。

但如果我使用“+=”,它会显示未定义。

var text = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

var ojt= JSON.parse(text);

var moduleA = angular.module("ModuleA", []);
moduleA.controller("MsgController", function ($scope) {
'use strict';
for(var i=0; i<3; i++) {
$scope.Message += ojt.employees[i].firstName;
}
});

结果是这样的:

    undefinedJohnAnnaPeter

怎么了?

最佳答案

Message 是未定义的,然后你 += 一些字符串到它上面,因此导致你的问题。预先将 $scope.Message 分配给空字符串以消除错误。

$scope.Message = ""
for(var i=0; i<3; i++) {
$scope.Message += ojt.employees[i].firstName;
}

编辑:如果您想在每个名称后添加新行,请在名称之间添加 \n

$scope.Message = ""
for(var i=0; i<3; i++) {
$scope.Message += ojt.employees[i].firstName + "\n";
}

关于javascript - 为什么它在数组之前显示未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35791031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com