вы можете использовать date api в angularjs
<span class="year"> {{ hit._highlightResult.original_release_date.value | date:"yyyy" }} </span>
hit._highlightResult.original_release_date.value
должен быть (согласно документу)
Дате форматировать или как дата объект, миллисекунды (строка или число) или различные ISO 8601 форматов строки даты (например, yyyy-MM-ddTHH: mm: ss.sssZ и более короткие версии, такие как yyyy-MM-ddTHH: mmZ, yyyy-MM-dd или yyyyMMddTHHmmssZ). Если часовой пояс не указан в строковом вводе, время считается находящимся в локальном часовом поясе.
таким образом, создать javascript date
объект и форматировать его, чтобы показать только год,
шаг 1 - создать фильтр, чтобы получить объект даты из строки (2012-10-12 00:00:00)
app.filter('dateToISO', function() {
return function(input) {
var dateTime = input.split(" ");
var date = dateTime[0];
var datePartials = date.split("-");
var time = dateTime[1];
var timePartials = time.split(":");
var formattedDate = new Date();
formattedDate.setFullYear(datePartials[0]);
formattedDate.setMonth(datePartials[1]-1);
formattedDate.setDate(datePartials[2]);
formattedDate.setHours(timePartials[0]);
formattedDate.setMinutes(timePartials[1]);
return formattedDate;
};
});
шаг 2 - создать функцию контроллера, чтобы получить date object
$scope.getDate = function() {
return $filter('dateToISO')('2012-10-12 00:00:00');
};
шаг 3 - вызов этой функции и получить объект даты в формате в HTML
<span class="year"> {{ getDate() | date:"yyyy" }} </span>
здесь рабочий Demo Plunker
Почему бы вам не использовать что-то вроде 'var myDate = new Date (dateFromServer)'? Я не уверен, что он будет работать на Safari. Тогда вы можете получить год просто 'myDate.getFullYear();' –