152518이라는 문자열을 시간 형식으로 변환해 보았습니다.
152518이라는 문자열을 시간 형식으로 변환하려면, 문자열을 적절히 분리하고 :를 추가하여 원하는 형식으로 표현할 수 있습니다.
let a = '152518';
// 문자열을 시간 형식으로 변환
let formattedTime = a.slice(0, 2) + ':' + a.slice(2, 4) + ':' + a.slice(4);
console.log(formattedTime); // "15:25:18"
코드 설명
- a.slice(0, 2)는 문자열의 첫 두 글자(15)를 가져옵니다.
- a.slice(2, 4)는 세 번째와 네 번째 글자(25)를 가져옵니다.
- a.slice(4)는 다섯 번째 글자부터 끝까지(18)를 가져옵니다.
- 각 부분을 :로 연결하여 "15:25:18" 형식의 문자열을 만듭니다.
이 방법은 입력 문자열이 항상 6자리(시, 분, 초)라고 가정합니다. 입력 값이 다를 수 있다면 추가적인 유효성 검사를 추가해야 합니다.
숫자에 3자리마다 콤마(,)를 추가하려면 toLocaleString() 메서드를 사용하는 것이 가장 간단하고 효율적입니다. 아래는 b 변수의 값이 9798.00 또는 10929일 때 이를 숫자 형식으로 포맷팅하는 방법입니다.
let b1 = 9798.00;
let b2 = 10929;
// toLocaleString()을 사용하여 포맷팅
let formattedB1 = b1.toLocaleString('en-US');
let formattedB2 = b2.toLocaleString('en-US');
console.log(formattedB1); // "9,798"
console.log(formattedB2); // "10,929"
코드 설명
- toLocaleString() 메서드:
- 숫자를 문자열로 변환하면서 3자리마다 콤마를 추가합니다.
- 'en-US'를 인자로 전달하면 미국 스타일(콤마로 구분)을 따릅니다.
- 소수점 이하 값도 자동으로 처리됩니다.
- 결과:
- 9798.00은 "9,798"으로 포맷됩니다(소수점 이하가 0일 경우 생략).
- 10929은 "10,929"으로 포맷됩니다.
주의사항
- 소수점 이하 자릿수를 유지하고 싶다면 toFixed()와 함께 사용할 수 있습니다.
let formattedWithDecimals = b1.toFixed(2).toLocaleString('en-US');
console.log(formattedWithDecimals); // "9,798.00"
이 방법은 간단하고 locale-aware(지역화 지원) 기능도 제공하므로 다양한 숫자 포맷팅에 유용합니다.
추가 설명
toLocaleString() 메서드가 제대로 작동하지 않는다면 그 이유는 변수 b1과 b2가 문자열로 처리되고 있을 가능성이 있습니다. toLocaleString()은 숫자 타입에서만 작동하기 때문에, 먼저 문자열을 숫자로 변환해야 합니다.
아래는 수정된 코드입니다.
let b1 = '9798.00'; // 문자열로 저장된 숫자
let b2 = '10929'; // 문자열로 저장된 숫자
// 문자열을 숫자로 변환한 뒤 toLocaleString() 사용
let formattedB1 = parseFloat(b1).toFixed(2).toLocaleString('en-US');
let formattedB2 = parseInt(b2, 10).toLocaleString('en-US');
console.log(formattedB1); // "9,798.00"
console.log(formattedB2); // "10,929"
코드 설명
- parseFloat():
- b1이 소수점이 포함된 문자열("9798.00")이므로 이를 숫자로 변환합니다.
- parseFloat(b1)는 문자열을 실수(float)로 변환합니다.
- parseInt():
- b2는 정수형 문자열("10929")이므로 이를 정수로 변환합니다.
- parseInt(b2, 10)는 문자열을 정수로 변환하며, 두 번째 인자는 10진법을 지정합니다.
- toLocaleString():
- 숫자로 변환된 값에 대해 3자리마다 콤마를 추가합니다.
결과
- "9798.00" → "9,798.00"
- "10929" → "10,929"
Home - Ecma International
Ecma International is an industry association dedicated to the standardization of information and communication systems Ecma is driven by industry members to meet their needs, providing a healthy competitive landscape based on differentiation of products a
ecma-international.org
https://namu.wiki/w/JavaScript
JavaScript
Ecma International의 프로토타입 기반의 프로그래밍 언어 로, 스크립트 언어 에 해당된다. 특수한
namu.wiki
'컴퓨터에서는' 카테고리의 다른 글
[ Rust ] 초급 문법 : 7. 참조와 대여 (&, &mut) – 변수를 참조하는 방법과 가변 참조 (0) | 2025.04.02 |
---|---|
티스토리에서 pdf 파일의 내용을 보여주는 방법에 대해 알아보았습니다. (2) | 2025.04.01 |
[ Rust ] 초급 문법 : 0. 주석 처리 (0) | 2025.03.31 |
[ Rust ] 초급 문법 : 6. 소유권 (Ownership) 개념 – Rust의 가장 중요한 메모리 관리 개념 (2) | 2025.03.24 |
CSS 프레임워크를 살펴보았습니다. (4) | 2025.03.21 |
댓글