це справді звучить як просте запитання, але мені не пощастило шукати. що робить +dв
function addMonths(d, n, keepTime) {
if (+d) {
засоби?
+…означає JavaScript
це справді звучить як просте запитання, але мені не пощастило шукати. що робить +dв
function addMonths(d, n, keepTime) {
if (+d) {
засоби?
+…означає JavaScript
Відповіді:
+Оператор повертає числове уявлення об'єкта. Тож у вашому конкретному випадку, здавалося б, передбачується чи є чи не dнульове число чи ні.
.parseInt()?
Як пояснено в інших відповідях, вона перетворює змінну в число. Особливо корисно, коли d може бути числом або рядком функція що оцінює число.
Приклад (за допомогою addMonthsфункції у запитанні):
addMonths(34,1,true);
addMonths("34",1,true);
то +dволевиявлення оцінюється до числа у всіх випадках. Таким чином, уникнути необхідності перевіряти тип та приймати різні шляхи коду залежно від того, чи dє це число, функція чи рядок, які можна перетворити на число.
+dне буде оцінювати число до першого прикладу виклику addMonths
+function(){...}буде виробляти NaNне оцінювати функцію