js 的隐式转换与显式转换
2024-08-31 00:47:08
隐式转换
1.undefined与null相等,但不恒等(===)
2.一个是number一个是string时,会尝试将string转换为number
3.隐式转换将boolean转换为number,0或1
4.隐式转换将Object转换成number或string,取决于另外一个对比量的类型
5.对于0、空字符串的判断,建议使用 “===” 。
6.“==”会对不同类型值进行类型转换再判断,“===”则不会。它会先判断两边的值类型,类型不匹配时直接为false。
undefined == null; // true
1 == true; // true
2 == true; // false
0 == false; // true
0 == ''; // true
NaN == NaN; // false NaN不等于任何值
[] == false; // true
[] == ![]; // true
'6' - '3' //
1234 + 'abcd' // "1234abcd"
显示转换
显示转换一般指使用Number、String和Boolean三个构造函数,手动将各种类型的值,转换成数字、字符串或者布尔值。
Number:
Number('1234') //
Number('1234abcd') // NaN
Number('') //
Number(true) //
Number(null) //
Number(undefined) // NaN
String:
String(1234) // "1234"
String('abcd') // "abcd"
String(true) // "true"
String(undefined) // "undefined"
String(null) // "null"
Boolean:
Boolean(0) // false
Boolean(undefined) // false
Boolean(null) // false
Boolean(NaN) // false
Boolean('') // false
最新文章
- Sql基础
- bae上传图片失败
- Linux下查看软件的安装路径
- BAE hibernate c3p0数据库连接池
- ABAP Enhancement:第一部分
- swift 闭包简写实际参数名$0、$1等理解
- 五指cms筛选功能的实现:
- stl binary search
- asp.net mvc4中model与Model的区别
- java读写串口
- 福建百度seo和推广,关键词排名优化,网络营销推广培训
- tomcat查看端口被占用
- 从PRISM开始学WPF(五)MVVM(一)ViewModel?
- AngularJs开发——指令与控制器间的通信
- python模块与路径
- Cortext-A7_i.MX 6ULL——多模式DDR控制器(MMDC)
- flask,gunicorn,supervisor,nginx配置服务器接口
- 《Linux内核设计与实现》读书笔记 4 进程调度
- sort逆序(char String)
- 重启Windows的PowerShell