반응형
1.01.1과 1.0.11 중 1.01.1 이 버전이 더 높은것처럼 .으로 구분된 버전을 구분하는 방법은 아래와 같다.
function compareVersions(v1, v2) {
// 두 버전을 '.'을 기준으로 나눕니다.
const v1Parts = v1.split('.');
const v2Parts = v2.split('.');
// 각 세그먼트를 정수로 변환하여 비교합니다.
for (let i = 0; i < v1Parts.length; i++) {
const v1Part = parseInt(v1Parts[i]);
const v2Part = parseInt(v2Parts[i]);
if (v1Part > v2Part) {
return 1;
} else if (v1Part < v2Part) {
return -1;
}
}
// 모든 세그먼트가 같으면 버전이 같다고 간주합니다.
return 0;
}
// 예제 사용법
console.log(compareVersions('1.01.1', '1.0.11')); // 1 반환
세그먼트(예: 1.0.1)로 구성되어 있다고 가정하고, 각 세그먼트를 정수로 변환하여 비교할 수 있다.
이 함수는 첫 번째 버전이 두 번째 버전보다 크면 1을, 작으면 -1을, 같으면 0을 반환합니다.
따라서 compareVersions('1.01.1', '1.0.11')은 1을 반환한다.
반응형
'Basic > JavaScript' 카테고리의 다른 글
FormData를 이용하여 json과 여러 파일을 같이 보내는 방법 (0) | 2023.07.03 |
---|---|
Javascript 퀵 소트 코드 (0) | 2023.07.01 |
mocha test를 parrelel하게 할때의 장단점 (0) | 2023.05.08 |
"Unhandled Error : TypeError: Converting circular structure to JSON 에러 해결 (0) | 2023.05.07 |
JavaScript 스코프 이해해보기 (0) | 2023.04.30 |