我正在创建一个离子应用程序。在那里我需要将一个对象的值存储到另一个变量中;对象数组的名称是username
。
这是username[0]
:
Object {username: "user1"}
在这里,我想将username
的值存储到另一个$scope
变量中。所以我做了如下:
$scope.username=$scope.username[0].username;
但是,它返回了错误。为什么?以及如何解决它。
答案 0 :(得分:0)
好的,如果username
是代码中的第一个数组,那么你写道:
$scope.username=$scope.username[0].username;
因此,您使用username
覆盖现有的object
数组,然后在下次调用$scope.username[0].username
时,它将失败并抛出错误:Can't read property username of undefined
因为{ {1}} username[0]
在这里。
因此,您需要在范围中使用不同的变量来引用undefined
和users
。
答案 1 :(得分:0)
试试这个
var obj = {username: "user1"};
$scope.username = obj.username;
答案 2 :(得分:-1)
您有一个对象但是您尝试使用[0]
作为数组访问它,因此会返回undefined
您可以使用点符号
访问对象obj.username
或用括号表示法
obj["username"]
let username = {
username: "user1"
};
console.log(username.username);
console.log(username['username']);