Есть такой вот код:
var source = Args.source;
var targets = Args.targets;
// var common_friends = {};
var common_friends = [];
var req;
var parametr = "";
var start = 0;
// из строки с целями вынимаем каждую цель
while(start<=targets.length-1){
if (targets.substr(start, 1) != "," && start != targets.length-1){
parametr = parametr + targets.substr(start, 1);
}
else {
// сразу делаем запросы, как только вытащили id
req = API.friends.getMutual({"source_uid":source, "target_uid":parametr});
common_friends = common_friends + req;
// а нужно common_friends[parametr] = req; VkScript похоже не поддерживает
parametr = "";
}
start = start + 1;
}
return common_friends;
Хранимая процедура в ВКонтакте в качестве параметров принимает: source (id) и targets(25 id через запятую). Далее мы вынимаем по id из targets и используем их для получения массива с общими друзьями.
Теперь всю эту информацию надо отправить назад в читаемом виде:
{'id': [список общих друзей], 'id': [], 'id': [friend_id1, friend_id2],
Но как я понял, добавить свойство в объект через использование квадратных скобок невозможно - обыкновенное
var a = {};
a["name"] = 123;
Возвращает
error: non-variable in assignment
Как на VkScript можно еще добавить свойство в объект?
var a = {};
a.name = 123;
В моем случае не очень подходит.