Допустим у нас есть вот такой код на javascript.
var years = prompt('Сколько вам лет?', 100);
console.log(years);
И как мы знаем после того как мы нажмем на cancel в модальном окне, наша функция вернет значение null.
Но мне в этом случае нужно что бы в переменной years было значение 0.
Конечно можно это сделать к примеру так:
if(years == null){
years = 0;
}
Но мне нужно сделать это без каких либо проверок на null.
Как можно этого добиться ?
+ автоматически преобразует null в 0, заодно и строчку спарсит в число.
var x = +prompt("Сколько вам лет?",100);
alert(x);
Либо вам необходимо сделать своё диалоговое окно, которое при отмене будет возвращать 0, либо вообще ничего не будет возвращать, а переменную зададите сразу равную 0.
Разумеется в реальности так делать смысла нет.
var years = prompt('Сколько вам лет?', 100) || 0;
console.log(years);
Для преобразования к числу нужно вызвать внутреннюю функцию ToNumber.
Данная функция вызывается во многих местах:
Number (value)+ и -+, -, *, /, %, **--, ++&, |, ^, ~>>, <<, >>>Важно: операторы сдвига и битовые операции приводят входной аргумент к беззнаковому и знаковому 32-х-битному числу.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей