Я пишу API для фильтрации моих данных. Чтобы выполнить фильтрацию, я добавляю входные данные фильтра к объекту фильтра, который инициализирован в моем контроллере angularJs.
Я пытаюсь получить значение даты из элемента ввода даты HTML5 в этот объект JS. Когда я печатаю этот объект фильтра, он выглядит как
{"date":"2018-11-14T21:00:00.000Z"}
Но когда я печатаю значение объекта фильтра в консоль, значение даты выглядит как;
{date: Wed Nov 14 2018 00:00:00 GMT+0300 (GMT+03:00)}
Пример кода, который дает тот же результат с моим фактическим кодом:
<html ng-app="MainModule">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.2/angular.min.js"></script>
</head>
<script>
var MainModule = angular
.module("MainModule", [])
.controller("MainCtrl", function ($scope) {
$scope.filter = {};
$scope.write = function() {
console.log($scope.filter);
}
});
</script>
<body ng-controller="MainCtrl">
<input type="text" ng-model="ali"> {{ali}}
<input type="date" ng-model="filter.date">
{{filter}}
<button ng-click="write()">Write</button>
</body>
</html>
Я использую браузер Chrome, но я пытался отправить объект фильтра на сервер с помощью Firefox, но значение отправленной даты было таким же, как в Chrome. Как я могу предотвратить изменение значения даты?