在 Android 上返回 undefined 的 JavaScript 对象成员
Javascript object member returning undefined on Android
我正在使用 backbone 创建一个 phonegap 应用程序.js。我正在保存到数据库并获得一个对象共鸣:
match_user.save({
'email':user.email,
'password':password,
'username':username,
'facebook_login':'yes',
'facebook_id':user.id
},
{
success:function(data){
console.log('data is ');
console.log(data);
console.log('data.username is ');
console.log(data.username);
console.log('data.password is ');
console.log(data.password);
console.log('JSON.stringify(data) is ');
console.log(JSON.stringify(data));
that.setSession(data);
},
error:function(){
console.log('in the error');
}
});
控制台.log 在 eclipse 中的输出为:
10-16 14:01:08.490: I/Web Console(10185): data is
10-16 14:01:08.490: I/Web Console(10185): [object Object]
10-16 14:20:51.500: I/Web Console(11297): data.username is
10-16 14:20:51.505: I/Web Console(11297): undefined
10-16 14:20:51.510: I/Web Console(11297): data.password is
10-16 14:20:51.510: I/Web Console(11297): undefined
10-16 14:01:08.495: I/Web Console(10185): JSON.stringify(data) is
{"first_name":"",
"last_name":"",
"email":"test@test.com",
"username":"user5654401630",
"password":"ipk9d",
"facebook_login":"yes",
"facebook_id":"5675685685"}
data.username、data.email 等都返回"未定义",但是当我字符串化对象时,我可以看到它们有值......
这是因为 JSON.stringify 返回一个字符串,而你不再将 json 作为对象了。因此,您需要在不串行相同的情况下获取数据
match_user.save({
'email':user.email,
'password':password,
'username':username,
'facebook_login':'yes',
'facebook_id':user.id
},
{
success:function(data){
console.log('data is ');
console.log(data);
console.log('JSON.stringify(data) is ');
console.log(data);
console.log('JSON.stringify(data).username is ');
console.log(data.username);
var obj = JSON.parse(data);
console.log('obj.username is ');
console.log(obj.username);
that.setSession(data);
},
error:function(){
console.log('in the error');
}
});
实际上,这是一个骨干的东西。 data.username 返回未定义,但 data.get('username') 有效。
相关文章:
- Chrome开发工具(如何知道我在调用哪个javascript对象)
- 循环遍历以数组为值的Javascript对象
- 从ajax请求中获取javascript对象
- 如何从对象的原型方法访问JavaScript对象属性
- 将XML转换为普通的旧JavaScript对象
- 通过引用传递JavaScript对象
- javascript对象操作:根据指定条件选择属性
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 如何在异步函数中使用javascript对象
- 临时Javascript对象
- 如何在ASP中为用户控件添加Javascript对象网
- 使用数组向下搜索Javascript对象
- Rails将JavaScript对象存储到Model的有效方式
- JavaScript对象不是从原型链继承的
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- SetInterval在javascript对象中表现怪异
- Javascript 对象和 this 关键字
- 如何在不知道关键字的情况下访问javascript对象值
- 在 JavaScript 对象中设置要使用的运算符的属性
- 如何搜索JavaScript对象并更改值