많은 국가에서 일요일 또는 다른 요일을 주 시작일로 지정하고 있으므로, 이 방식은 전 세계 모든 국가에 적용할 수 없습니다. @gerhard 님의 제안에 따라, 가능한 해결책을 논의하기 위해 이 주제를 개설합니다.
적절한 해결책은 사용자가 비즈니스 주의 시작일을 정의할 수 있는 사용자별 설정 옵션을 제공하는 것입니다. 기본값은 월요일로 할 수 있습니다. (그리고 해당 옵션을 선택하면 설정 옵션으로 연결되는 링크와 함께 "Monday"를 "비즈니스 주 시작일"로 변경하면 됩니다.)
사이트 관리자가 이 설정을 담당하는 방안도 고려해 보았지만, 많은 포럼이 특정 국가에 국한되지 않기 때문에 이 방식은 적절하지 않다고 판단했습니다.
왜 이걸 제대로 확인하지 않았는지 모르겠네요. moment.js에서 주 시작 요일을 가져오는 간단한 방법이 있습니다:
moment().startOf('week').day()
이미 moment를 로컬라이즈하고 있으므로 이 방법은 잘 작동합니다. 실제로 테스트해 보니 사이트 언어를 히브리어로 설정하면 주 시작 요일이 0(일요일)으로 나오고, 영어로 다시 설정하면 1(월요일)로 돌아갑니다. 다음 주에 이 기능을 구현하는 것은 꽤 간단할 것 같습니다.
원한다면 사이트 수준에서 “주 시작 요일” 설정을 추가할 수도 있지만, 캘린더에서 그런 설정이 필요한지 확실하지 않습니다. 사용자가 자체 로케일을 설정할 수 있다면 이런 기능은 바람직하지 않을 수도 있습니다.
사용자 옵션으로 제공해야 한다고 생각합니다. 언어를 기반으로 감지하는 것만으로는 충분하지 않을 수 있습니다. 주(week)의 시작 요일은 국가에 따라 다르기 때문입니다. 또한 모든 사이트에서 사용자 로케일 설정을 활성화하지는 않습니다. 시간대 설정에서처럼 momentjs를 사용하여 값을 미리 선택하도록 하는 것은 어떨까요?