Согласно MDN Object.freeze()
документация:
Метод
Object.freeze()
замеряет объект: это значит, что новые свойства не добавляются к нему; предотвращает удаление существующих свойств; и предотвращает изменение существующих свойств или их перечислимость, настраиваемость или возможность записи. По сути, объект делается эффективно неизменным. Метод возвращает замороженный объект.
Я ожидал, что вызов замораживания даты позволит предотвратить изменения этой даты, но он, похоже, не работает. Вот что я делаю (работает Node.js v5.3.0):
let d = new Date()
Object.freeze(d)
d.setTime(0)
console.log(d) // Wed Dec 31 1969 16:00:00 GMT-0800 (PST)
Я бы ожидал, что вызов setTime
приведет к ошибке или не сделает ничего. Любые идеи о том, как заморозить дату?