[javascript] 변수가 Moment.js 객체인지 테스트하는 방법은 무엇입니까?

내 응용 프로그램에는 백엔드에서 채워진 일부 입력과 사용자가 입력하는 다른 입력이있는 HTML 양식이 있습니다 ( time입력에서). onChange사용자가 값을 변경하면, 각 기능 입력을 통해 실행.

백엔드에서 채워진 입력은 moment객체 로 변환되고 사용자가 입력 한 날짜는 단순한 문자열입니다. 이것은 onChange함수가 일부 moment객체와 일부 문자열을 만남을 의미합니다 . 어떤 입력이 moment객체 인지 아닌지 알아야 합니다.

변수가 moment객체 인지 테스트하는 데 권장되는 방법은 무엇입니까 ?

내가 발견 한 moment개체가이 _isAMomentObject속성을하지만 변수가 있는지 테스트 할 다른 방법이 있는지 궁금하네요 moment객체입니다.

내가 시도한 또 다른 옵션 moment은 변수에 관계없이 호출 하는 것입니다. 이것은 string변수를 moment객체 로 변환하고 기존 moment객체 에 영향을 미치지 않는 것 같습니다 .



답변

Moment에는 그러한 목적을위한 isMoment방법 이 있습니다. 무엇을 찾아야할지 모르면 문서에서 찾기가 특히 쉽지 않습니다.

먼저 속성 instanceof을 테스트 할 것인지 (예를 들어 특정 서브 클래 싱 또는 교차 영역 상황에서) 확인한 다음 실패합니다 _isAMomentObject.


답변

instanceof순간 인지 확인할 수 있습니다 .

moment() instanceof moment; // true


답변

moment () instanceof moment;

항상 사실이 될 것입니다.

  • moment (undefined) instanceof moment
  • moment ( “hello”) instanceof moment

당신은 항상 순간 객체를 만들고 있습니다. 그래서 유일한 방법은 이렇게 확인하는 것입니다

  • moment (속성) .isValid ()


답변