if (api.hasOwnProperty('attachmens') && Array.isArray(api.attachments)) {
api.attachments.forEach(function (attacment) {
});
}
Но судя по примеру кода который вы предоставили - подумайте в сторону использования шаблонов на клиенте. Жить будет проще.
И да, и в PHP и в JS свитч можно заменить простым ассоциативным массивом. И код будет проще поддерживать, и разрастаться он не будет.
var tpl = {
photo: ''tpl for photo,
audio: 'some other tpl'
};