>웹 프론트엔드 >JS 튜토리얼 >js에서 문자열을 숫자로 변환하는 방법은 무엇입니까?

js에서 문자열을 숫자로 변환하는 방법은 무엇입니까?

青灯夜游
青灯夜游원래의
2020-07-18 14:50:014566검색

JS 문자열을 숫자로 변환하는 방법: 1. 변환 함수인parseInt() 또는parseFloat()를 사용하여 값을 정수로 변환할 수 있고,parseFloat()는 값을 부동 소수점 숫자로 변환할 수 있습니다. 2. Number() 함수를 사용하여 객체의 값을 숫자로 변환합니다.

js에서 문자열을 숫자로 변환하는 방법은 무엇입니까?

방법 1: 변환 함수를 사용하세요.parseInt() 또는parseFloat()

js는 두 가지 변환 함수,parseInt()와parseFloat()를 제공합니다. 전자는 값을 정수로 변환하고 후자는 값을 부동 소수점 숫자로 변환합니다. String 유형에서 이러한 메서드를 호출해야만 이 두 함수가 다른 유형에 대해 올바르게 실행될 수 있으며 NaN(숫자가 아님)이 반환됩니다.

parseInt

JsPerf.com의 벤치마크에 따르면 대부분의 브라우저는 ParseInt에 가장 잘 반응합니다. 가장 빠른 방법이지만 preseInt를 사용하면 몇 가지 일반적인 함정에 직면하게 됩니다.

parseInt("08"); // returns 0 部分老浏览器.
parseInt("44.jpg"); // returns 44

parseInt: 베이스가 전달되지 않을 때 전달된 베이스는 기본값이 10입니다. parseInt(num, 10). num 속성 유형에서는 문자열을 숫자로 변환하는 데 parsInt를 사용하지 마세요.

parseFloat

16진수를 구문 분석하지 않는 경우 매우 좋은 선택입니다. 예:

parseInt(-0xff); // returns -255
parseInt("-0xFF"); // returns -255
parseFloat(-0xff); // returns -255
parseFloat("-0xFF"); // returns 0

참고: 문자열의 음수 16진수는 특별한 경우이며,parseFloat로 구문 분석하면 결과가 올바르지 않습니다. 프로그램에서 NaN 상황을 방지하려면 변환된 값을 확인해야 합니다.

parseFloat("44.jpg"); // return 44

parseFloat: 16진수를 변환할 때는 주의하세요. 변환하려는 개체 유형을 모르는 경우에는parseFloat를 사용하지 마세요.

방법 2: Number() 함수 사용

Number() 함수는 객체의 값을 숫자로 변환합니다. 객체의 값을 숫자로 변환할 수 없으면 Number() 함수가 반환됩니다. NaN.

예:

var test1= new Boolean(true);
var test2= new Boolean(false);
var test3= new String("999");
var test4= new String("999 888");

document.write(Number(test1)+ "<br />");
document.write(Number(test2)+ "<br />");
document.write(Number(test3)+ "<br />");
document.write(Number(test4)+ "<br />");

Output;

1
0
999
NaN

방법 3: js 변수 약한 유형 변환 사용

작은 예를 보면 한 눈에 이해할 수 있습니다.

var str= &#39;012.345 &#39;;
var x = str-0;
x = x*1;

위의 예는 js의 약한 유형 특성을 활용하고 문자열에서 숫자로 유형 변환을 달성하기 위한 산술 연산만 수행합니다. 그러나 이 방법은 여전히 ​​권장되지 않습니다.

권장 튜토리얼: "JavaScript 비디오 튜토리얼

위 내용은 js에서 문자열을 숫자로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:js는 무엇입니까?다음 기사:js는 무엇입니까?