Google Apps 脚本从联系人返回对象



My Code:

function testjson() {
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var group = ContactsApp.getContactGroup('MyFriends');
var contacts = group.getContacts();
var json = JSON.stringify(contacts[0]);
Logger.log(json);
}

使用调试器时,我可以看到返回的联系人变量是一个包含 18 个对象的数组。调试器显然无法"扩展"对象。所以我包含了获取字符串的JSON.stringify。运行代码后,将"{}"json 变量的值。我真正想要的是查看联系人对象中的键名称,以便我可以直接访问字段值。与其使用"var name = contacts[i].getFullName();",我想使用"var name = contacts[i].fullname"或任何全名的键。

Google不会让你像这样访问Contact对象的属性,你必须使用它提供的getFullName((等方法。

对于像 Array 这样的内置对象,您可以使用以下内容列出它们的属性:

function getArrayProperties() {
Logger.log(Object.getOwnPropertyNames(Array));
}

但是,如果您尝试使用联系人或联系人应用程序对象:

function getContactProperties() {
var contact = ContactsApp.getContacts()[0]      
Logger.log(Object.getOwnPropertyNames(contact));
}

你只会得到:"类型错误:类型对象的预期参数,但有类型对象。

最新更新