Ответ 1
Nicolás и Brian правы, но если вам интересно, как это работает, +new Date();
эквивалентно (new Date()).valueOf();
, потому что унарный +
получает значение своего операнда, а затем преобразует его ToNumber
.
Вы можете добавить метод valueOf
для любого объекта и использовать оператор унарного + для возврата числового представления вашего объекта, например:
var productX = {
valueOf : function () {
return 500; // some "meaningful" number
}
};
var cost = +productX; // 500