ΠΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ° @kruncher ΠΈΠ· ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ Π½Π° # 1754:
Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Object.freeze Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ , ΠΈ ΡΡΠΎ Π² ΡΠ΅Π»ΠΎΠΌ Π΄ΠΎΡΡΠΈΠ³Π»ΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠ½Π΅ Π±ΡΠ»ΠΎ Π½ΡΠΆΠ½ΠΎ; Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ:
let now = Object.freeze(moment()); if (now.isSameOrBefore(anotherTime)) { // throws exception }
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅:
TypeError: Can't add property _isValid, object is not extensible at valid__isValid (C:\git\quick-test\node_modules\moment\moment.js:93:24) at Moment.moment_valid__isValid [as isValid] (C:\git\quick-test\node_modules\moment\moment.js:2195:16) at Moment.isSame (C:\git\quick-test\node_modules\moment\moment.js:1945:44) at Moment.isSameOrBefore (C:\git\quick-test\node_modules\moment\moment.js:1962:21)
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Object.freeze?
const moment = require('moment')
const today = Object.freeze(moment());
today.toString()
=> 'Tue May 02 2017 10:04:52 GMT-0400'
today.add(1, 'day')
=> moment("2017-05-03T10:04:52.889")
today.toString()
=> 'Wed May 03 2017 10:04:52 GMT-0400'
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΌΠ½Π΅ ΡΡΠΎ-ΡΠΎ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ, Π½ΠΎ Object.freeze
, ΠΏΠΎΡ
ΠΎΠΆΠ΅, ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ ΠΌΠ΅Π½Ρ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ. Π― Π·Π½Π°Ρ, ΡΡΠΎ Π² 3.x
Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΎΠ»ΡΠΎΠΊ ΠΊ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡΠΈ, Π½ΠΎ ΠΏΠΎΠΊΠ° Π΅ΡΡΡ Π»ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ Π² Object.freeze? /
ΠΠ΅ΡΡΠΈΡ ΡΠ·Π»Π°: 6.10 (~ lts)
ΠΠ΅ΡΡΠΈΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ°: 2.18.1
@butterflyhug - Π― Π½Π΅ ΠΌΠΎΠ³Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ TypeError Π΄Π°ΠΆΠ΅ Π² ΡΡΡΠΎΠ³ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
@SeanDunford - ΡΡΠΎ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΡΡΠ°Π½Π½ΡΠΌ. Π― Π½Π΅ Π·Π½Π°Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΄ΠΎΠ²Π΅ΡΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡΠΈ Π² 2.x.
Π― Ρ ΠΎΡΠ΅Π» Π±Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎΠ½ΡΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ Π·Π°ΠΌΠΎΡΠΎΠΆΠ΅Π½ ΠΈΠ»ΠΈ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π·Π°ΠΌΠΎΡΠΎΠΆΠ΅Π½ .
@marwahaha - Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΈ Π½Π° Luxon. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΡ Π½Π΅ Π±ΡΠ»ΠΈ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ 3.x.
Π₯ΠΎΡΠΎΡΠΎ, Ρ Π·Π°ΠΊΡΠΎΡ ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ Object.freeze Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ moment
s Π² 2.x.