我一直在尝试获取联系人姓名和姓氏,并获取手机号码,但当我使用getAll()
方法时,控制台会显示:
Found: Daniel Garcia [object Object]
如您所见,它会显示Name
+ LastName
+ tel
。为什么它显示tel
1>} [object Object]
这是我的代码:
var allContacts = navigator.mozContacts.getAll({
sortBy: "givenName",
sortOrder: "ascending"
});
allContacts.onsuccess = function(event) {
if (cursor.result) {
if (cursor.result.familyName[0]== undefined) {
cursor.result.familyName[0]= "";
}
console.log("Found: " + cursor.result.givenName[0] + " " + cursor.result.familyName[0] + ' ' + cursor.result.tel[0]);
cursor.continue();
} else {
console.log("No more contacts");
}
}
答案 0 :(得分:1)
tel
这是一个对象数组 - 联系人所有可能的电话号码列表。每个对象都有几个有用的属性。在javascript中,当您打印出一个对象时,它会打印一个对象字符串表示(如[object Object]
)。
查看文档以了解tel
对象的结构,并按照您想要的方式进行打印:https://developer.mozilla.org/en-US/docs/Web/API/mozContact.tel
答案 1 :(得分:0)
非常感谢它像Aras和jamesh提议的那样工作
console.log("Found: " + cursor.result.givenName[0] + " " + cursor.result.familyName[0]+' '+JSON.stringify(cursor.result.tel[0]));
,控制台显示:
"Found: Daniel Garcia {"type":["mobile"],"value":"8112441018"}"