>  기사  >  웹 프론트엔드  >  JavaScript의 세 가지 유형의 캐스트는 무엇입니까?

JavaScript의 세 가지 유형의 캐스트는 무엇입니까?

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-07-16 14:29:263520검색

세 가지 강제 유형 변환은 다음과 같습니다. 1. 숫자 유형으로 변환, Number(), parseInt(), parseFloat() 2. 문자열 유형으로 변환, toString(), String(); 부울().

JavaScript의 세 가지 유형의 캐스트는 무엇입니까?

이 튜토리얼의 운영 환경: 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) 함수

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+&#39;<br>&#39;);
    }

    var person={};//字面量创建对象

    // 设置字面量对象属性
    person.name=&#39;huangshiren&#39;;
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write(&#39;正在吃饭&#39;);
    }
</script>
</body>
</html>

parseInt(string, radix) function

매개변수 설명:

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+&#39;<br>&#39;);
    }


</script>
</body>
</html>

parseFloat(string) 함수

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+&#39;<br>&#39;);
    }


</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=[&#39;鞋&#39;,&#39;连衣裙&#39;,&#39;皮带&#39;];
    println(shoppingCart.toString());


    var person={};//字面量创建对象

    // 设置字面量对象属性
    person.name=&#39;huangshiren&#39;;
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write(&#39;正在吃饭&#39;);
    }

    println(person.toString());


    function println(a){
        document.write(a+&#39;<br>&#39;);
    }


</script>
</body>
</html>

Boolean 유형으로 변환

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=[&#39;鞋&#39;,&#39;连衣裙&#39;,&#39;皮带&#39;];
    println(Boolean(shoppingCart));



    var person={};//字面量创建对象

    // 设置字面量对象属性
    person.name=&#39;huangshiren&#39;;
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write(&#39;正在吃饭&#39;);
    }

    println(Boolean(person));

    function println(a){
        document.write(a+&#39;<br>&#39;);
    }


</script>
</body>
</html>

[추천 학습: javascript 고급 튜토리얼]

위 내용은 JavaScript의 세 가지 유형의 캐스트는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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