隐式转换:

所谓隐式转换,就是当运算符在运算时,两边数据不统一,编译器会自动将两边数据进行数据类型转换成统一的再计算

常见隐式转换:

1、算术运算符:加(+)、减(-)、乘(*)、除(/)、取模(%),++,--,大小于(>、<)(前面的这些隐式转 换为Number,无法转换为数字(如"abc"、“JavaScript”),则会转换为 NaN)

        注意:加(+)比较特殊,如果有字符串,则全部转换为String,如果没有字符串,还是隐式  转换为Number

2、逻辑运算符:逻辑与(&&)、逻辑或(||)、逻辑非(!),还有判断语句,隐式转换为Boolean;

3、字符串运算符:+-、+=

4、==运算符

String == Number : 字符串将会转化为number去比较。

Anyting == Boolean:布尔类型会转化为number类型(0或者1) ,然后比较。

null == undefinded: 返回true。

Object == non-Object: 如果object/function/array与一个基本类型的数据作对比(string or         number), 首先将对象转换 成基本类型数据,会先使用valueOf()、再toString()方法。

显式转换

与隐式类型转换相反,强制类型转换需要手动进行,在 JavaScript 中,强制类型转换主要是通过调用全局函数来实现的。Number(value)、parseInt(value, radix)、parseFloat(value)、Boolean()、String()...

JS的隐式转换与显式转换相关推荐

  1. 隐式转换和显式转换及强制转换的区别

    string strType = "123"; object objType= (object)strType;//可以不要,隐式转换, 要的为显式转换 string strTyp ...

  2. JS的隐式转换 从 [] ==false 说起

    前言 最近和大创扯淡时说到了[] == false,从结果上来看我俩都答错了,从气势上来说我俩的歪理都能出书了(恩,程序猿的骄傲),但是这其实背后隐藏了一潭很深的水,对,很深... 隐式类型转换 JS ...

  3. html中隐式转换成数字,关于 JS 类型隐式转换的完整总结

    作者:原罪 来源:SegmentFault 思否社区 不管是在技术聊天群还是论坛里,总能碰到 x + y 等于多少的问题,比如 ,如果你不了解其中的原理,那么就插不上话,只能眼睁睁地等大佬解答了. T ...

  4. 从 ++[[]][+[]]+[+[]]==10? 深入浅出弱类型 JS 的隐式转换

    起因 凡是都有一个来源和起因,这个题不是我哪篇文章看到的,也不是我瞎几把乱造出来的,我也没这个天赋和能力,是我同事之前丢到群里,叫我们在浏览器输出一下,对结果出乎意料,本着实事求是的精神,探寻事物的本 ...

  5. 一文看懂JS里隐式转换、toString() 和 valueOf()

    js-看懂隐式转换toString 和 valueOf js隐式类型转换 数值类型和布尔类型的相加 字符串和数字相加 隐式类型转换隐藏一些错误 isNaN() 对象的隐式转换 强制类型转换 - &qu ...

  6. C++类型转换:隐式转换和显式转换

    目录 隐式转换 为什么要进行隐式转换 C++隐式转换的原则 C++隐式转换发生条件 隐式转换的风险 禁止隐式转换 显式转换 dynamic_cast static_cast const_cast re ...

  7. 从一道面试题说起—js隐式转换踩坑合集

    前方提醒: 篇幅较长,点个赞或者收藏一下,可以在下一次阅读时方便查找 提到js的隐式转换,很多人第一反应都是:坑. 的确,对于不熟悉的人来说,js隐式转换存在着很多的让人无法预测的地方,相信很多人都深 ...

  8. js return的值取不到_【JS基础】隐式转换(一)

    开篇 JS作为一门动态语言十分灵活,但是伴随而来的弱类型隐式转化的问题让我们十分头疼. 隐式作为一个大课题,很难用一个很简短的篇幅把JS的隐式转换讲解的十分清楚.所以我选择用多次少量的策略进行梳理,争 ...

  9. php隐式转换,隐式转换如何使用?总结隐式转换实例用法

    JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object.object是引用类型,其它的五种是基本类型或者是原始类型.我们可 ...

最新文章

  1. 进程和线程的区别?什么时候用进程?什么时候用线程?----看到好的复制到自己的园子里哈哈...
  2. 阿里p7程序员哀叹:35岁,被通知合同不再续签,输出社会,怎么办?
  3. 学习这么美丽的事,你要不要和我一起?
  4. 全球多媒体视频内容保护最佳实践
  5. BZOJ1055: [HAOI2008]玩具取名[区间DP]
  6. 集设分享最全字体帮合集,愿这些作品能给你带来灵感和启迪。
  7. Oracle11g新特性:在线操作功能增强-表增加包含默认值的字段(转载)
  8. java 数据结构--希尔排序
  9. 软件工程专业学生的自我反思
  10. 9种免费在线PDF编辑网站
  11. 他是中国最牛X的黑客,曾让6个国家束手无策,却被怀疑是精神病
  12. 奔驰4-MATIC和奥迪quattro的区别和共同点是什么(杂记)
  13. nginx如何替换ssl证书
  14. Android 程序保活,锁机代码
  15. 达内C++视频(全)
  16. Go语言占位符的使用
  17. [廖雪峰python教程列表生成器练习]杨辉三角定义如下,把每一行看做一个list,试写一个generator,不断输出下一行的list
  18. linux多进程和多线程分析之一 .
  19. CREO6.0装配工程图总重添加。
  20. 过采样和欠采样问题(二分类数据不均衡)

热门文章

  1. 幂律分布的参数估计方法及R实现
  2. CAD 启动无法加载配置文件,上次任务中保存的某些配置信 cass主框架程序没有加载
  3. [Linux] Linux 客户端NFS挂载后目录下中文名文件乱码
  4. 计算机网络笔记Part4 网络层(Network Layer)
  5. 脑电EEG静息态数据重新分段
  6. android 动态修改资源,Android如何动态修改Manifest文件
  7. 如何使用迅捷画图快速绘制流程图
  8. 用matlab编写的游戏,用matlab编写的俄罗斯方块小游戏
  9. VEGAS Movie Studio渲染时该选什么格式好?
  10. 视频软件Vegas的项目工程文件打不开怎么办?