Как я могу вычесть год и добавить месяцы к своим датам?

У меня есть столбец, содержащий будущие даты, и я хочу вычесть год и добавить месяцы, используя модифицированный шаг JavaScript.

Тип данных CloseDateDate в формате мм/дд/гггг. например 01/10/2020

Я пробовал следующее:

var newDate;
year(CloseDate) = year(CloseDate)-1;
month(CloseDate) = month(CloseDate)+5;
newDate = CloseDate;

Но это не изменяет дату, и я получил следующую ошибку:

Modified JavaScript value.0 - Javascript error: 
Modified JavaScript value.0 - ReferenceError: Function function year() {
    [native code, arity=1]
}
 can not be used as the left-hand side of assignment or as an operand of ++ or -- operator. (script#11)

Я что-то упустил в своем коде JavaScript?

Является ли CloseDate строкой? Если да, то как это выглядит, не могли бы вы привести пример

etarhan 10.04.2019 17:09

Укажите минимальный воспроизводимый пример. Убедитесь, что все необходимые функции и переменные объявлены.

Code-Apprentice 10.04.2019 17:25
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
959
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вам нужно назначить новый год и месяц допустимой переменной:

var year = CloseDate.getFullYear()-1;
var month = CloseDate.getMonth()+5;

Пока мы на этом, мы тоже должны получить день:

var day = CloseDate.getDate();

Обратите внимание, что скобки слева от = не имеют смысла и вызывают ошибку. Кроме того, я использую правильные имена функций для получения частей даты. Эти функции находятся в прототипе Date, поэтому для доступа к ним я должен использовать запись через точку. Я нашел их, погуглив «дата javascript», а затем щелкнув первую ссылку, которая предназначена для документации MDN.

Наконец, соберите части вместе как полную дату:

var newDate = new Date(year, month, day);
Ответ принят как подходящий

Если CloseDate уже является полем Date, в PDI Modified JavaScript Script Value Step вы можете использовать функцию dateAdd():

var newDate = dateAdd(dateAdd(CloseDate,"y",-1), "m", 5)

Другие вопросы по теме