μ€λͺ
κ·Έλμ λμ λλ£λ μ μλμ§ μμ λ³μ(κΈ°λ³Έμ μΌλ‘ moment(undefined)
λ₯Ό μ¬μ©ν λ€μ μ΄λ₯Ό μλ‘μ΄ μκ° μΈμ€ν΄μ€( moment()
μ λΉκ΅νλ €κ³ νλ μ°λ¦¬μ μν΄ λ°μν κ²μΌλ‘ νλͺ
λ μ½λμμ λ²κ·Έλ₯Ό λ°κ²¬νμ΅λλ€ moment(undefined)
) isSameOrAfter
λ©μλλ₯Ό μ¬μ©ν©λλ€.
κ·Έλμ μ°λ¦¬κ° κΈ°λ³Έμ μΌλ‘ μ¬μ©ν κ²μ λ€μκ³Ό κ°μ΅λλ€.
let isSame = moment(undefined).isSameOrAfter(moment());
ν΄λΉ μ½λλ₯Ό νλ λ² μ€ννλ©΄ true
λ°νλμ§λ§ νμ κ·Έλ° κ²μ μλλλ€. λλλ‘ false
λ°νν©λλ€. μκ°μ΄ μ μλμ§ μμ λ κ°μ μκ° μΈμ€ν΄μ€λ₯Ό μ°¨λ‘λ‘ μμ±νλ©΄ λͺ λ§μ΄ν¬λ‘μ΄ μ°¨μ΄λ‘ μμ±λ μ μκΈ° λλ¬ΈμΈ κ² κ°μ΅λλ€.
λ€μμ Windows 10μ Node v7.1.0κ³Ό Moment.js 2.17.1μ΄ μ€μΉλ Chrome/56.0.2924.87μμ μ€νν ν μ€νΈμ λλ€.
const moment = require('moment');
function isSameOrAfter() {
console.log('isSameOrAfter')
for (let i = 0; i < 1000; i++) {
let output = moment().isSameOrAfter(moment());
if (!output) {
console.log(output, i);
}
}
}
function isSame() {
console.log('isSame')
for (let i = 0; i < 1000; i++) {
let output = moment().isSame(moment());
if (!output) {
console.log(output, i);
}
}
}
function sameExactVariable() {
console.log('Another test comparing the same exact variable')
for (let i = 0; i < 1000; i++) {
const now = moment();
let output = now.isSame(now);
if (!output) {
console.log(output, i);
}
}
}
isSameOrAfter();
isSame();
sameExactVariable();
μ²μ λ ν¨μλ 1000λ² μ€ λͺ λ² false
μ κΈ°λ‘νκ³ μΈ λ²μ§Έ ν¨μλ κΈ°λ‘νμ§ μμ΅λλ€. μμΈκ° λ°μν κ²½μ°μλ§ κΈ°λ‘ν©λλ€.
νκ²½:
2017λ
2μ 21μΌ νμμΌ 14:36:06 GMT+0100(μλΆ μ λ½ νμ€μ)
2017-02-21 14:36:06
-60
Mozilla/5.0(Windows NT 10.0, Win64, x64) AppleWebKit/537.36(Geckoμ κ°μ KHTML) Chrome/56.0.2924.87 Safari/537.36
2.17.1
μλ§ λλ κ°μ μ’ λ₯μ λ¬Έμ κ° μμ΅λλ€. Chrome λ° Android κΈ°κΈ°μμλ μμλλ‘ μλνμ§λ§ iOSμμλ μλνμ§ μμ΅λλ€.
let arrDates: Array<String> = [];
_.each(Dates, (date) => {
if (moment(date).isSameOrAfter(moment().format('MM-DD-YYYY'))) {
arrDates.push(date);
}
});
iOSμμλ chrome λ° Androidμμ μλνλ λμ λ°°μ΄ nullμ΄ λ°μν©λλ€.
νκ²½:
μ½λ₯΄λλ° CLI: 6.4.0
Ionic νλ μμν¬ λ²μ : 2.0.0
Ionic CLI λ²μ : 2.1.18
Ionic μ± λΌμ΄λΈλ¬λ¦¬ λ²μ : 2.1.9
Ionic μ± μ€ν¬λ¦½νΈ λ²μ : 1.0.0
iOS λ°°ν¬ λ²μ : 1.9.0
ios-sim λ²μ : 5.0.13
OS: macOS μμλΌ
λ
Έλ λ²μ : v6.9.2
Xcode λ²μ : Xcode 8.2.1 λΉλ λ²μ 8C1002
@ErikMartensson
μκ°μ μ μνμ§ μκ³ λ κ°μ μκ° μΈμ€ν΄μ€λ₯Ό μ°¨λ‘λ‘ μμ±νλ©΄ λͺ λ§μ΄ν¬λ‘μ΄ μ°¨μ΄λ‘ μμ±λ μ μκΈ° λλ¬Έμ΄λΌκ³ μκ°ν©λλ€.
μ, moment()
λλ moment(undefined)
--λμΌν¨--μ΄ μ§κΈ μ μλ―Έν©λλ€. JS λ μ§λ λ°λ¦¬μ΄ ν΄μλλ₯Ό κ°μ§λ―λ‘ μ§κΈ μ΄ λ€λ₯Έ λ°λ¦¬μ΄μΈ κ²½μ°(λλ‘λ λ°μν μ μμ) ν λ²μ λ€λ₯Έ λ€μκ³Ό κ°μ΅λλ€. AFAIK, JSλ moment().isSameOrAfter(moment())
λ κ°μ moment()
νΈμΆμ νκ°νλ μμλ₯Ό μ μνμ§ μμ΅λλ€. κ·Έλ¬λ μ΄μ¨λ isSameOrAfter()
λ₯Ό μ€ννκΈ° μ μ λΆλͺ
ν λ λ²μ§Έ νΈμΆμ μνν΄μΌ νλ―λ‘ μ€μ λ‘ λ λ²μ§Έ νΈμΆμ΄ νμ λ¨Όμ μ€λ©΄ λλΌμ§ μμ κ²μ
λλ€. μ¦, μκ° μ°¨μ΄κ° μλ κ²½μ° ν
μ€νΈμ "orAfter" λΆλΆλ μ€ν¨ν©λλ€. λλ²κ±°λ‘ μ΄λ₯Ό νμΈν μ μμ΅λλ€.
λ¬΄μ¨ λ§μ ν΄μΌ ν μ§ λͺ¨λ₯΄κ² μ΄. μ΄κ²μ΄ λ°λ‘ μ ν ν΄μλ λ μ§ μκ°μ΄ μλνλ λ°©μμ λλ€. "μ§κΈ"μ λ§νλ μμ μ λ°λΌ λ€λ₯Έ μκ°μ μλ―Έν©λλ€.
@imrvshah λ¨Όμ μ°Έκ³
...isSameOrAfter(moment().format('MM-DD-YYYY'))
νμ¬ μκ°μΌλ‘ μ μκ°μ λ§λ€κ³ λ¬Έμμ΄λ‘ νμνν λ€μ ν΄λΉ λ¬Έμμ΄μ isSameOrAfter()
μ μ λ¬νμ¬ λ€μ ꡬ문 λΆμν©λλ€. λΉμ μ λ°©κΈ λ€μκ³Ό κ°μ΄ λ§νμ΄μΌ νμ΅λλ€.
...isSameOrAfter(moment())
κ·Έλ¦¬κ³ μκ° -> λ¬Έμμ΄ -> μκ° μμ
μ μ μ₯νμ΅λλ€. κ·Έκ²μ ν¨μ¬ λ λμ μ½λμ΄μ§λ§ λ²κ·Έλ₯Ό κ³ μΉ μλ μμ΅λλ€. "μ΄λ΄, κ·Έλ° μκ°μ λ¬Έμμ΄μ μ λ¬νλ©΄ μ λλ€"λΌλ μ¬μ© μ€λ¨ κ²½κ³ λ₯Ό λ³Έ μ μ΄ μμ΅λκΉ? Momentλ moment("1982-05-25")
μ κ°μ ISO 8601 λ¬Έμμ΄μ ꡬ문 λΆμνλ λ°©λ²μ μκ³ μμ΅λλ€. λν moment("05-25-1982", "MM-DD-YYYY")
μ κ°μ΄ νμμ΄ μ§μ λ λ¬Έμμ΄μ ꡬ문 λΆμνλ λ°©λ²λ μκ³ μμ΅λλ€. κ·Έλ¬λ "05-25-1982"μ κ°μ λ¬Έμμ΄μ΄ μ¬μ©μκ° λ§νμ§ μκ³ "MM-DD-YYYY"λ₯Ό μλ―Ένλ€λ κ²μ μμ§ λͺ»ν©λλ€. λ°λΌμ λΈλΌμ°μ λ ν΄λΉ λ¬Έμμ΄μ Date
μμ±μμ μ λ¬νμ¬ μΆμΈ‘ν μ μμ΅λλ€. μ¦, μ½λλ λ€μκ³Ό κ°μ΄ μΈλνλ©λλ€.
m.isSameOrAfter("05-25-1982");
m.isSameOrAfter(moment("05-25-1982"))
m.isSameOrAfter(moment(new Date("05-25-1982")))
μ΄λ₯Ό μ¬μ©νμ§ μλ μ΄μ κ° μμ΅λλ€. λΈλΌμ°μ μμ μ€ν μ€μΈ κ²°κ³Όμ λ°λΌ μΌκ΄μ±μ΄ μλ κ²°κ³Όλ₯Ό μ 곡ν©λλ€. κ·Έλμ λΉμ μ΄ κ²ͺκ³ μλ κ²μ iOSκ° κΈ°λ³Έμ μΌλ‘ ν΄λΉ νμμ μ§μνμ§ μλλ€λ κ²μ λλ€. λ΄ Safari κ°λ° μ½μμμ:
> new Date("05-25-1982")
Invalid Date
κ·Έκ²μ λΉμ μκ² λΉ λ°°μ΄μ λ¨κΈ°λ λμ λΉκ΅λ₯Ό μ 곡νμ΅λλ€.
@icambron
λλ λΉμ μκ² λμνκ³ μ½μμμ λ μ§ νμμΌλ‘ μΈν΄ μ¬μ© μ€λ¨ κ²½κ³ μΈ κ²½μ°λ₯Ό νμ ν©λλ€.
μ¬λ¬ λ² ν¬μ₯νμ§ μκ³ κ·Έλ₯ μ¬μ©νλ κ²μ λν μ견μ 보λ΄μ£Όμ
μ κ°μ¬ν©λλ€. ...isSameOrAfter(moment())
κ°μ₯ μ μ©ν λκΈ
@imrvshah λ¨Όμ μ°Έκ³
νμ¬ μκ°μΌλ‘ μ μκ°μ λ§λ€κ³ λ¬Έμμ΄λ‘ νμνν λ€μ ν΄λΉ λ¬Έμμ΄μ
isSameOrAfter()
μ μ λ¬νμ¬ λ€μ ꡬ문 λΆμν©λλ€. λΉμ μ λ°©κΈ λ€μκ³Ό κ°μ΄ λ§νμ΄μΌ νμ΅λλ€.κ·Έλ¦¬κ³ μκ° -> λ¬Έμμ΄ -> μκ° μμ μ μ μ₯νμ΅λλ€. κ·Έκ²μ ν¨μ¬ λ λμ μ½λμ΄μ§λ§ λ²κ·Έλ₯Ό κ³ μΉ μλ μμ΅λλ€. "μ΄λ΄, κ·Έλ° μκ°μ λ¬Έμμ΄μ μ λ¬νλ©΄ μ λλ€"λΌλ μ¬μ© μ€λ¨ κ²½κ³ λ₯Ό λ³Έ μ μ΄ μμ΅λκΉ? Momentλ
moment("1982-05-25")
μ κ°μ ISO 8601 λ¬Έμμ΄μ ꡬ문 λΆμνλ λ°©λ²μ μκ³ μμ΅λλ€. λνmoment("05-25-1982", "MM-DD-YYYY")
μ κ°μ΄ νμμ΄ μ§μ λ λ¬Έμμ΄μ ꡬ문 λΆμνλ λ°©λ²λ μκ³ μμ΅λλ€. κ·Έλ¬λ "05-25-1982"μ κ°μ λ¬Έμμ΄μ΄ μ¬μ©μκ° λ§νμ§ μκ³ "MM-DD-YYYY"λ₯Ό μλ―Ένλ€λ κ²μ μμ§ λͺ»ν©λλ€. λ°λΌμ λΈλΌμ°μ λ ν΄λΉ λ¬Έμμ΄μDate
μμ±μμ μ λ¬νμ¬ μΆμΈ‘ν μ μμ΅λλ€. μ¦, μ½λλ λ€μκ³Ό κ°μ΄ μΈλνλ©λλ€.μ΄λ₯Ό μ¬μ©νμ§ μλ μ΄μ κ° μμ΅λλ€. λΈλΌμ°μ μμ μ€ν μ€μΈ κ²°κ³Όμ λ°λΌ μΌκ΄μ±μ΄ μλ κ²°κ³Όλ₯Ό μ 곡ν©λλ€. κ·Έλμ λΉμ μ΄ κ²ͺκ³ μλ κ²μ iOSκ° κΈ°λ³Έμ μΌλ‘ ν΄λΉ νμμ μ§μνμ§ μλλ€λ κ²μ λλ€. λ΄ Safari κ°λ° μ½μμμ:
κ·Έκ²μ λΉμ μκ² λΉ λ°°μ΄μ λ¨κΈ°λ λμ λΉκ΅λ₯Ό μ 곡νμ΅λλ€.