网络编程 
首页 > 网络编程 > 浏览文章

JavaScript隐式类型转换代码实例

(编辑:jimmy 日期: 2024/11/7 浏览:3 次 )

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

(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

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

上一篇:JavaScript设计模式之策略模式实现原理详解
下一篇:vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。