JavaScript隐式类型转换代码实例

(编辑:jimmy 日期: 2024/12/30 浏览:2)

值类型之间的数据类型转换:

(1)数字和字符串使用+运算符:

数字和字符串如果使用+运算符进行操作,那么会将数字先转换为字符串,然后进行字符串连接操作:

var str = "string text ";
var num = 10;
console.log(str + num) // "string text 10"

(2)布尔值参与的+运算符操作:

如果有布尔型参与,那么首先会将布尔值转换为对应的数字或者字符串,然后再进行相应的字符串连接或者算数运算。

var num = 12;
var bool = true;
var str = "text";
console.log(num + bool) //13
console.log(str + bool) // "text true"

(3)Null和Undefined参与的+运算符操作

如果和数字进行计算,null会转化为0,undefined会转化成NaN

注意:Null转换为0,Undefined转换成NaN

console.log(undefined + 1) //NaN
console.log(null + 1) // 1

首先调用string()方法,取得相应的字符串值再进行操作

var a;
var str='123';
console.log(a + str);//'undefined123'
var a=null;
var str='123';
console.log(a + str);//'null123'

(4)==等性运算:

undefined和null比较特殊,它们两个使用==运算符返回值是true。

其他值类型(Number、Boolean、Null、Undefined)进行比较的时候都会将运算数转换为数字

console.log(undefined == null); // true
console.log("1" ==true); //true

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。