JavaScript复习之数据类型转换

转换成字符串

  • toString()

    var num = 5;
    console.log(num.toString());
  • String()

    var s = null;
    console.log(s.toString());
    console.log(String(s));
    
    // String()函数存在的意义:有些值没有toString(),
    // 这个时候可以使用String()。比如:undefined和null
  • 拼接字符串方式

    num + “”,当 + 两边一个操作符是字符串类型,一个操作符是其它类型的时候,会先把其它类型转换成字符串再进行字符串拼接,返回字符串

转换成数值类型

  • Number()

    var a = Number('1');
    var b = Number(1);
    var c = Number('c');
    var d = Number(null);
    var e = Number(undefined);
    
    console.log(a,b,c,d,e); // 1 1 NaN 0 NaN
    
    // Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN
  • parseInt()

    var a = parseInt('1.2df');
    var b = parseInt(1);
    var c = parseInt('c12');
    var d = parseInt(null);
    var e = parseInt(undefined);
    
    console.log(a,b,c,d,e); //1 1 NaN NaN NaN
    
    // 如果第一个字符是数字会解析,直到遇到非数字结束
    // 如果第一个字符不是数字或者符号就返回NaN
  • parseFloat()

    var a = parseFloat('1.2df');
    var b = parseFloat('1.3.4');
    var c = parseFloat('c12');
    var d = parseFloat(null);
    var e = parseFloat(undefined);
    
    console.log(a,b,c,d,e); //1.2 1.3 NaN NaN NaN
    
    // parseFloat() 把字符串转换成浮点数
    // parseFloat()和parseInt非常相似,
    // 不同之处在与parseFloat会解析第一个 . 遇到第二个.或者非数字结束
    // 如果解析的内容里只有整数,解析成整数
  • +,-,-0 等运算

    var str = '500';
    console.log(+str);        // 取正
    console.log(-str);        // 取负
    console.log(str - 0);   

转换成布尔类型

  • Boolean()
var a = Boolean('0');
var b = Boolean(0);
var c = Boolean('1');
var d = Boolean(null);
var e = Boolean(undefined);
var f = Boolean(NaN);

console.log(a,b,c,d,e,f); //true false true false false false

// 0、''(空字符串) 、null、 undefined 、NaN 会转换成false  其它都会转换成true

猜你喜欢

转载自blog.csdn.net/github_27314097/article/details/81264325