TypeScript에서 문자열을 숫자로 변환

Rana Hasnain Khan 2024년2월15일
  1. TypeScript에서 단항 더하기(+) 연산자를 사용하여 문자열을 숫자로 변환
  2. TypeScript에서 parseInt() 함수를 사용하여 문자열을 숫자로 변환
  3. TypeScript에서 parseFloat() 함수를 사용하여 문자열을 숫자로 변환
  4. TypeScript에서 전역 Number() 함수를 사용하여 문자열을 숫자로 변환
  5. TypeScript에서 문자열을 숫자로 변환한 후 NaN 확인
TypeScript에서 문자열을 숫자로 변환

이 기사에서는 TypeScript에서 다양한 방법을 사용하여 문자열을 숫자로 변환하는 방법을 예제와 함께 설명합니다. TypeScript에서는 몇 가지 방법으로 문자열을 숫자로 변환할 수 있습니다.

단항 더하기(+) 연산자와 전역 Number() 함수는 TypeScript에서 매우 유용합니다. parseInt()parseFloat() 기능을 활용할 수도 있습니다.

이러한 기능을 활용하는 방법에 대한 몇 가지 예를 보여드릴 수 있습니다.

TypeScript에서 단항 더하기(+) 연산자를 사용하여 문자열을 숫자로 변환

단항 더하기(+) 연산자는 숫자의 모든 문자열 표현, 부울 값(true 및 false) 및 null을 숫자로 변경합니다. 피연산자를 숫자로 변경할 수 없는 경우 단항 더하기 연산자는 NaN이 됩니다.

아래와 같이 몇 가지 예를 살펴보겠습니다.

예제 코드:

# TypeScript

console.log(+"111")
console.log(+"112.5175")
console.log(+"10AA0.5165")
console.log(+"")
console.log(+" ")
console.log(+null)
console.log(+undefined)
console.log(+Infinity)
console.log(+true)
console.log(+false)
console.log(+"0x44")
console.log(+"0066")
console.log(+"0o21")
console.log(+"3.98e7")
console.log(+"71 35")
console.log(+"BA 35")

출력:

TypeScript(1)의 단항 더하기

TypeScript(2)의 단항 더하기

모든 문자열을 숫자로 변환할 수 있습니다. 빈 문자열 또는 Null0으로 변환합니다. 보시다시피 true1이 되고 false0이 됩니다.

8진수/16진수를 10진수로 변환할 수도 있습니다. 우리는 과학적 표기법 숫자에 대해 정확하게 작업해야 합니다. 숫자로 변환하지 못하면 NaN을 반환합니다.

TypeScript에서 parseInt() 함수를 사용하여 문자열을 숫자로 변환

parseInt() 함수는 문자열을 분석하여 숫자로 변경합니다. 다음은 parseInt() 함수의 구문입니다.

기수를 지정하지 않으면 16진수로 가정합니다.

통사론:

# Typescript

parseInt(string, radix)

아래에 표시된 것처럼 예제를 살펴보고 다른 방법을 사용하십시오.

예제 코드:

# TypeScript

console.log(parseInt("120"))
console.log(parseInt("100.5225"))
console.log(parseInt("10AA0.3375"))
console.log(parseInt(""))
console.log(parseInt(null))
console.log(parseInt(Infinity)
console.log(parseInt(true))
console.log(parseInt(false))
console.log(parseInt("0x12"))
console.log(parseInt("0042"))
console.log(parseInt("0o56"))
console.log(parseInt("3.285e7"))
console.log(parseInt("95 35"))
console.log(parseInt("CA 35"))

출력:

TypeScript(1)의 parseInt

TypeScript(2)의 parseInt

보시다시피 모든 문자열을 숫자로 변환할 수 있습니다. 빈 문자열, null, infinity, true, falseNaN으로 변환할 수 있습니다.

문자열이 0x로 시작하면 16진수입니다. parseInt()0o로 시작하는 8진수를 인식하지 못한다는 것을 아는 것이 중요합니다. 이전 브라우저는 8진수로 0으로 시작합니다.

주 및 후행 공백을 무시합니다. 문자열의 시작이 숫자이면 숫자로 바뀌고 나머지는 피합니다.

기수를 사용할 수 있습니다. 기수는 2에서 36까지 시작합니다.

  • 2는 바이너리에 사용됩니다.
  • 8은 8진수에 사용됩니다.
  • 10은 10진수로 사용됩니다.
  • 16진수는 16을 사용합니다.

예제 코드:

# TypeScript

console.log(parseInt("22"));
console.log(parseInt("56",8));
console.log(parseInt("54",19));

console.log(parseInt("021"));
console.log(parseInt("061",9));
console.log(parseInt("011",11));

console.log(parseInt("0x21"));
console.log(parseInt("0x41",3));
console.log(parseInt("0x11",19));

console.log(parseInt("0o21"));
console.log(parseInt("0o41",3));
console.log(parseInt("0o11",26));

출력:

TypeScript(3)의 parseInt

TypeScript에서 parseFloat() 함수를 사용하여 문자열을 숫자로 변환

이 주제에 대한 기능을 하나 더 논의할 수 있습니다. parseFloat()는 문자열을 숫자로 변환하는 함수입니다.

예제 코드:

# TypeScript

console.log(parseFloat("200"))
console.log(parseFloat("223.5535"))
console.log(parseFloat("11AA0.5225"))
console.log(parseFloat(""))
console.log(parseFloat(null))
console.log(parseFloat(Infinity))
console.log(parseFloat(true))
console.log(parseFloat(false))
console.log(parseFloat("0x77"))
console.log(parseFloat("0042"))
console.log(parseFloat("0o11"))
console.log(parseFloat("3.228e7"))
console.log(parseFloat("45 85"))
console.log(parseFloat("FA 95"))

출력:

TypeScript(1)의 parseFloat

TypeScript(2)의 parseFloat

문자열을 소수 또는 숫자로 변환할 수 있습니다. 빈 문자열 null, truefalseNaN으로 변환했습니다.

이 함수는 infinity를 그대로 반환합니다. 문자열이 0x 또는 0o로 시작하면 0으로 변경됩니다. 16진수 또는 8진수는 인식되지 않습니다.

주 및 후행 공백을 무시합니다. 문자열의 시작 문자가 숫자이면 숫자로 바뀌고 나머지는 피합니다.

TypeScript에서 전역 Number() 함수를 사용하여 문자열을 숫자로 변환

전역 Number() 함수를 사용할 수 있습니다. 단항 더하기(+) 연산자와 같습니다.

예제 코드:

# TypeScript

console.log(Number("320"))
console.log(Number("120.5225"))
console.log(Number("15AA0.5245"))
console.log(Number(""))
console.log(Number(" "))
console.log(Number(null))
console.log(Number(undefined))
console.log(Number(Infinity))
console.log(Number(true))
console.log(Number(false))
console.log(Number("0x43"))
console.log(Number("0052"))
console.log(Number("0o11"))
console.log(Number("3.435e7"))
console.log(Number("15 99"))
console.log(Number("DE 25"))

출력:

TypeScript(1)의 Global Number() 함수

TypeScript(2)의 Global Number() 함수

출력에서 문자열을 숫자로 성공적으로 변환했음을 알 수 있습니다. null0으로 변환했습니다.

true 부울 값은 1로 변환되고 false0이 됩니다. 8진수/16진수를 10진수로 변환할 수도 있습니다.

과학적 표기법 숫자에 대해 올바르게 작업할 수 있습니다. 변환에 실패하면 NaN을 반환합니다.

TypeScript에서 문자열을 숫자로 변환한 후 NaN 확인

‘NaN’은 ‘Not a Number’를 의미합니다. 숫자 연산의 출력이지만 숫자가 아닙니다.

변환 후 isNaN() 메서드를 사용하여 값이 NaN인지 확인할 수 있습니다.

예제 코드:

# TypeScript

strToNum("AB 35")
strToNum("35")

function strToNum(Valnum) {
    if (isNaN(+Valnum)) {
        console.log("This is not a number")
    } else  {
        console.log(+Valnum)
    }
}

출력:

TypeScript에서 NaN 확인

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

관련 문장 - TypeScript String