세 가지 강제 유형 변환은 다음과 같습니다. 1. 숫자 유형으로 변환, Number(), parseInt(), parseFloat() 2. 문자열 유형으로 변환, toString(), String(); 부울().
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
JavaScript는 약한 유형의 언어이며 값 데이터 유형이 변경될 수 있습니다.
일부 언어에서는 각 변수의 데이터 유형을 지정해야 합니다. 이러한 언어를 Java C++와 같은 강력한 유형의 언어라고 합니다.
유형 변환에는 두 가지 유형이 있습니다. 하나는 명시적 변환입니다. 프로그래머가 수동으로 코드 변환을 작성해야 하며, 다른 하나는 JavaScript 인터프리터에 의해 변환되는 스텔스 변환입니다.
JavaScript는 명시적 변환을 위해 다음 함수를 제공합니다.
1. 숫자 유형으로 변환: Number(mix),parseInt(string,radix), parseFloat(string)
2. 문자열 유형으로 변환: toString(radix) String(mix)
3. Boolean 유형으로 변환: Boolean(mix)
Number(mix) 함수는 모든 유형의 매개변수 mix를 숫자 유형으로 변환할 수 있습니다. 규칙은 다음과 같습니다.
1. 부울 값인 경우 true와 false는 각각 1과 0으로 변환됩니다.
2.
3. null인 경우 0
4을 반환합니다. 정의되지 않은 경우 NaN을 반환합니다.
5. 문자열인 경우 다음 규칙을 따릅니다.
a. 문자열에 숫자만 포함된 경우 10진수로 변환합니다(선행 0 무시).
문자열에 유효한 부동 소수점 형식이 포함된 경우 부동 소수점 값으로 변환(선행 0 무시)
c. 빈 문자열인 경우 0으로 변환
d. 문자열에 위와 다른 형식이 포함되어 있으면 NaN으로 변환
6 . 객체인 경우 객체의 valueOf() 메서드를 호출한 후 이전 규칙에 따라 반환된 값을 변환합니다. 변환 결과가 NaN인 경우 객체의 toString() 메서드를 호출하고 반환된 문자열 값을 이전 규칙에 따라 다시 변환합니다.
Example
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script> println(Number(false)); println(Number(true)); println(Number(123)); println(Number(null)); println(Number(undefined)); println(Number(person)); function println(a){ document.write(a+'<br>'); } var person={};//字面量创建对象 // 设置字面量对象属性 person.name='huangshiren'; person.age=58; person.appetite=3; person.eat=function(){ document.write('正在吃饭'); } </script> </body> </html>
매개변수 설명:
string 구문 분석할 값입니다. 인수가 문자열이 아닌 경우 ToString 추상 작업을 사용하여 문자열로 변환됩니다. 문자열 시작 부분의 공백 문자는 무시됩니다.
radix 위 문자열의 기수를 나타내는 2에서 36 사이의 정수(수학 시스템의 기초)입니다. 예를 들어, 매개변수 "10"은 우리가 일반적으로 사용하는 10진수 체계를 사용한다는 의미입니다. 항상 이 매개변수를 지정하면 이 코드를 읽을 때 혼란이 사라지고 변환 결과를 예측할 수 있습니다. 기본이 지정되지 않은 경우 구현에 따라 결과가 달라지며 일반적으로 기본값은 10입니다.
parseInt(string, radix) 함수는 문자열을 정수 유형 값으로 변환합니다. 또한 다음과 같은 특정 규칙이 있습니다.
1. 비어 있지 않은 첫 번째 문자가 발견될 때까지 문자열 앞의 공백을 무시합니다.
2 첫 번째 문자가 숫자 기호나 음수 기호가 아닌 경우 NaN을 반환합니다.
3. 첫 번째 문자가 숫자인 경우 문자열 구문 분석이 완료되거나 숫자가 아닌 기호가 나타날 때까지 구문 분석을 계속합니다
4. 이전 구문 분석 단계의 결과가 0으로 시작하면 8진수로 구문 분석됩니다. ; x로 시작하면 16진수
5로 구문 분석합니다. radix 매개변수가 지정되면 radix를 기본으로 구문 분석됩니다
Example
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script> println(parseInt("12.34567",10)); println(parseInt("de",10)); println(parseInt("0123456789",10)); println(parseInt("0e0",16)); println(parseInt("0101010001",2)); function println(a){ document.write(a+'<br>'); } </script> </body> </html>
parseFloat(string) , 문자열을 부동 소수점 유형의 숫자 값으로 변환합니다.
규칙은 기본적으로parseInt와 동일하지만 몇 가지 차이점이 있습니다. 문자열의 첫 번째 소수점 기호는 유효하며,parseFloat는 문자열에 정수로 구문 분석할 수 있는 숫자가 포함된 경우 모든 선행 0을 무시합니다. 부동 소수점 숫자가 아닌 정수 값이 반환됩니다.
예
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script> println(parseFloat("3.14")); println(parseFloat("314e-2")); println(parseFloat("0.0314E+2")); println(parseFloat("3.14more non-digit characters")); function println(a){ document.write(a+'<br>'); } </script> </body> </html>
toString(radix) 메소드. 정의되지 않음 및 null을 제외한 모든 유형의 값에는 객체의 문자열 표현을 반환하는 toString() 메서드가 있습니다.
Example
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script> var count=10; println(count.toString()); var boolean=true; println(boolean.toString()); var today=new Date(); println(today.toString()); var shoppingCart=['鞋','连衣裙','皮带']; println(shoppingCart.toString()); var person={};//字面量创建对象 // 设置字面量对象属性 person.name='huangshiren'; person.age=58; person.appetite=3; person.eat=function(){ document.write('正在吃饭'); } println(person.toString()); function println(a){ document.write(a+'<br>'); } </script> </body> </html>
Boolean(mix) 함수는 모든 유형의 값을 Boolean으로 변환합니다.
예
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>数据类型转换</title> </head> <body> <script> var count=10; println(Boolean(count)); println(Boolean(0)); println(Boolean(4<3)); println(Boolean(null)); println(Boolean("")); println(Boolean(undefined)); var shoppingCart=['鞋','连衣裙','皮带']; println(Boolean(shoppingCart)); var person={};//字面量创建对象 // 设置字面量对象属性 person.name='huangshiren'; person.age=58; person.appetite=3; person.eat=function(){ document.write('正在吃饭'); } println(Boolean(person)); function println(a){ document.write(a+'<br>'); } </script> </body> </html>
[추천 학습: javascript 고급 튜토리얼]
위 내용은 JavaScript의 세 가지 유형의 캐스트는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!