首页 / JAVA / Javascript中的类型转换
Javascript中的类型转换
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Javascript中的类型转换,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2757字,纯文字阅读大概需要4分钟。
内容图文
![Javascript中的类型转换](/upload/InfoBanner/zyjiaocheng/1217/27e7cad4d35d453b9d05be1a45fa07cd.jpg)
第一部分:Javascript中类型转换的常用场景
1.在使用运算符进行操作时,常用的运算符就是 + 运算符
使用+运算符做运算时,由于只有 字符串 和数字 才能够使用+运算符,那么使用时,会根据情况,将不同的数据类型,转换为字符串或者数字
当+运算符左边的数据类型是数字时, 1 + null === 1 // 这里将null转为了数字0 1 + undefined // NaN undefined无法转为数字 ,那么就会 NaN
1 + NaN // NaN 注意的是 NaN === NaN 以及 NaN == NaN 都是false, 但是 typeof NaN === ‘number‘ 1 + ‘a‘ === ‘1a‘ // 数字与字符串或者对象相加,默认转为字符串 1 + {} === ‘1[object Object] // 对象相加时,默认将对象toString()后相加 1 + { a : 1} === ‘1[object Object]‘ // 对象相加时,默认将对象toString()后相加 1 + [] === ‘1‘ // 数组相加时,默认将数组toString()后相加 1 + [1] === ‘11‘ // 数组相加时,默认将数组toString()后相加 1 + [1,1,1] === ‘11,1,1‘ // 数组相加时,默认将数组toString()后相加
1 + false === 1
1 + true === 2
1 + Object === ‘1function Object() { [native code] }‘ 1 + Function === ‘1function Function() { [native code] }‘ 1 + function() { return 1} === ‘1function(){return 1}‘ 1 + function() { return 1 } === "1function() { return 1 }" 1 + Symbol = ‘1function Symbol() { [native code] }‘ 1 + Set = ‘1function Set() { [native code] }‘ const str = ‘str‘ str + 1 === ‘str1‘ // 字符串与数字相加 ,转为字符串 str + [] === ‘str‘ // 数组相加时,默认将数组toString()后相加 str + [1] === ‘str1‘ // 数组相加时,默认将数组toString()后相加 str + [1, 1, 1] === ‘str1, 1, 1‘ // 数组相加时,默认将数组toString()后相加 str + {} === ‘str[object Object]‘ // 对象相加时,默认将对象toString()后相加 str + {a : 1} === ‘str[object Object]‘ // 对象相加时,默认将对象toString()后相加 str + NaN === ‘strNaN‘ // 字符串与NaN相加 str + null === ‘strnull‘ str + undefined === ‘strundefined‘
str + true === ‘strtrue‘
str + false === ‘strfalse‘
字符串与函数相加结果与数字类似
其他类型的数组之间使用 + 运算符时
null + null === 0 // false + false === 0 //
true + true === 2 //
true + false === 1
undefined + null // NaN
null + undefined // NaN
undefined + undefined // NaN
false + null === 0
true + null === 1
true + undefined // NaN
undefined + true // NaN
false + undefined // NaN
undefined + false // NaN
2. 使用 == 和 === 运算符时
1 == true// true 0 == false// true 0 == null// false 0 == undefined // false 0 == ‘‘ // true ‘‘ == false// truenull == false// false ‘‘ == null// false ‘‘ == undefined // false undefined == false// falsenull == undefined // true 1 == ‘1‘, 1 == true, ‘1‘==true// true ‘0‘ == false, false == 0, 0 == ‘0‘ // true ‘0‘ == true// false NaN 不能 == 任何值,甚至 NaN != NaN [] == [] // false {} == {} // false 对于引用类型数据来说 ,地址是不可能相同的,所以 [] == [] , {} == {} 是false Symbol(1) == Symbol(1) // false Symbol类型的任何值都不会和其他值 相等,因为Symbol本身就是定义独一无二的值
3.补充说明,if的判断条件
if的判断条件是把小括号中的值转换成boolean形式的值 即对小括号中的值使用Boolean()方法转换 那么 Boolean(1) === true Boolean(0) === false Boolean(null) === false Boolean(undefined) === false Boolean(NaN) === false Boolean(Symbol()) === true Boolean(‘‘) === false Boolean({}) === true Boolean([]) === true Boolean(function(){}) === true Boolean(‘0‘) === true// 最特殊的情况 Boolean(new Boolean(false)) === true
原文:https://www.cnblogs.com/liquanjiang/p/11369451.html
内容总结
以上是互联网集市为您收集整理的Javascript中的类型转换全部内容,希望文章能够帮你解决Javascript中的类型转换所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。