хорошо, я пишу небольшой фрагмент кода, чтобы получить значение формата даты ISO для вчерашнего дня.
код:
var dateString = new Date();
var yesterday = dateString.getFullYear();
yesterday += "-"+dateString.getMonth()+1;
yesterday += "-"+dateString.getDate()-1;
Вышеприведенный код выводит 2009-111-23. Ясно, что dateString.getMonth () не обрабатывается как intiger и не привязывается к его концу.
Помещает ли "-" + перед dateString.getDate () приведение getDate () в строку?
эта работа дает желаемый результат.
var dateString = new Date();
var yesterday = dateString.getFullYear() + "-";
yesterday += dateString.getMonth()+1+ "-";
yesterday += dateString.getDate()-1;
//yesterday = 2009-12-22
Хотя мне не очень нравится, как это выглядит ... как бы то ни было.
Может кто-нибудь объяснить мне, почему javascript действует так? есть ли объяснение, почему это происходит?