• 类型转换


    什么是类型转换?

    把一种数据类型转换成另外一种数据类型 。

    为什么要转换?

    有的时候,我们需要进行数据之间的操作,需要两种数据都是一样的类型才能进行操作,如果两种类型不同,可能得不到我们想要的结果,这个时候就需要进行类型转换。

    可以进行转换的数据类型

    js可以把任意一种数据类型转换成以下几种 :
    数字类型。
    字符串类型。
    布尔值类型。

    任意类型转数字:

    Undefined类型转数字

    1 var a=undefined;        
    2 console.log(Number(a));//NaN

    Null类型转数字

    1 var a=null;        
    2 console.log(Number(a));//0

    Boolean类型转数字

    1 var a=true;        
    2 console.log(Number(a));//1
    3 var b=false;
    4 console.log(Number(b));//0

    String类型转数字

    1 var a='';//空字符串
    2 console.log(Number(a));//0
    3 var a=' ';//空格字符串
    4 console.log(Number(a));//0
    5 var a='s';//非数字
    6 console.log(Number(a));//NaN

    Object类型转数字

    1 var a={};//对象
    2 console.log(Number(a));//NaN
    3 var b=[];//空数组
    4 console.log(Number(b));//0
    5 var c=[1,2];//非空数组
    6 console.log(Number(c));//NaN

    任意数据类型转布尔值:

    Undefined类型转布尔值

    1 var a=undefined;
    2 console.log(Boolean(a));//false

     Null类型转布尔值

    1 var a=null;
    2 console.log(Boolean(a));//false

    Number类型转布尔值

    1 var a=0;
    2 console.log(Boolean(a));//false
    3 var b=-1;//非0数字
    4 console.log(Boolean(b));//true
    5 var c=NaN;
    6 console.log(Boolean(c));//false

    String类型转布尔值

    1 var a=' a';//非空字符串(包含空格)
    2 console.log(Boolean(a));//true

    Object类型转布尔值

    1 var a={};
    2 console.log(Boolean(a));//true
    3 var b=[];
    4 console.log(Boolean(b));//true
    5 //对象类型转布尔值结果都是true

    字符串转数字

    语法:parseInt(字符串);

    1 var a='123';
    2 console.log(parseInt(a));//数字123

    字符串的第一位字符,必需为数字或者空格+数字,这个时候,它会一直往后找,直到找到一个非数字的时候,就停止查找,把找到的数字返回出来。否则返回NaN。

    1 var a='        100';
    2 console.log(parseInt(a));//100
    3 var b='a123';
    4 console.log(parseInt(b));//NaN

    语法:parseFloat(字符串);

    1 var a='12.33';
    2 console.log(parseFloat(a));//12.33

    把字符串转为浮点型数字(小数),规则与parseInt一样。

    isNaN

    判断一个数据是不是NaN,如果这个数据是NaN,返回true,如果不是返回false。

    1 var a=NaN;
    2 console.log(isNaN(a));//true
    3 var b=112;
    4 console.log(isNaN(b));//false

    隐式类型转换

    我们没有明确告诉js要转什么类型,但是在运算的时候,如果不转成另一种类型,运算就无法进行。这个时候js会自动把类型进行转换。

    1 console.log(true+true);//2
    2 console.log(true-false);//1
    3 console.log(null*true);//0
    4 console.log([]+true);//字符串true
  • 相关阅读:
    函数 20140829
    结构体 20140827
    经典小游戏--推箱子
    更改版本与集合 20140826
    冒泡排序 20140823
    数组 20140822
    语句与字符串的属性及方法 20140820
    20141021WinForm控件属性
    20141014C#面向对象抽象方法,抽象类,接口
    20141011C#面向对象基础
  • 原文地址:https://www.cnblogs.com/imguo/p/5763234.html
Copyright © 2020-2023  润新知