Попытка реализовать JSON.stringify, как описано здесь: Hide certain values in output from JSON.stringify() и исключить некоторые поля из сериализации, но это не сработает.Почему моя функция замены в JSON.stringify (значение, replacer) не получает ключи в угловом приложении?
К примеру, в моем контроллере я имею следующий код:
.controller('ExampleController', ['$scope', function($scope) {
$scope.event = {
id:1,
title: 'event title',
users: [{
id: 1,
name: 'Anatoly'
},{
id: 2,
name: 'Roman'
}],
private1: 1,
private2: 2
};
var replacer = function(key, value){
console.log(key);
};
$scope.stringified1 = JSON.stringify($scope.event, replacer);
// $scope.stringified = JSON.stringify($scope.event, ['id','title','users','name']);
}]);
console.log(key)
Почему ничего не выводит? Вызывается сама функция, но параметр key
пуст.
Я сделал plunker здесь: http://plnkr.co/edit/U6ZcIuPVr5RzMIBl8X6c?p=preview
Я использую Угловое 1.4.9 и Chrome 48.0.2564.116
P.S. Я выполнил эту функцию с переданным массивом, и это работает, но использование функции может дать гораздо большую гибкость, поэтому я хотел бы понять, почему она не работает.
заменителя ничего не возвращает. Что ты пытаешься сделать? – charlietfl
На самом деле вы помогли мне решить эту проблему, если я не вернусь при первом вызове любой ценности, он не будет вызван по следующим свойствам :) См. Обновленный плункер здесь: http://plnkr.co/edit/h9NU2xppeGuMSTfTyRng?p = предварительный просмотр и спасибо :) – Anatoly