JS的类型转换,强制转换和隐式转换

JS的类型转换

1.强制转换

通过String(),Number(),Boolean()函数强制转换

var str=123;var str1='123';console.log(typeof str);console.log(typeof str1);console.log(typeof String(str));console.log(typeof Number(str1));

输出

 numberstringstringnumber
  • 1
  • 2
  • 3
  • 4

2.隐式转换

JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object。object是引用类型,其它的五种是基本类型或者是原始类型。我们可以用typeof方法打印来某个是属于哪个类型的。不同类型的变量比较要先转类型,叫做类型转换,类型转换也叫隐式转换。隐式转换通常发生在运算符加减乘除,等于,还有小于,大于等。。

console.log(typeof '11')//输出string
console.log(typeog 11) //输出number
console.log('11' < 4 ) //输出fals

1.字符串加数字,数字就会转成字符串。

2.数字减字符串,字符串转成数字。如果字符串不是纯数字就会转成NaN。字符串减数字也一样。两个字符串相减也先转成数字。

3.乘,除,大于,小于跟减的转换也是一样。

隐式转换的其他例子

console.log(10+'20') //2010console.log(10-'20')//-10 number
console.log(10-'one') //NaN not a number
console.log(10-'101a') //NaN
console.log(10*'20') //200 number
console.log('10'*'20') //200 number
console.log(20/'10') //2 number
console.log('20'/'10') //2 number
console.log('20'/'one') //NaN

关于==

1.undefined等于null

2.字符串和数字比较时,字符串转数字

3.数字为布尔比较时,布尔转数字

4.字符串和布尔比较时,两者转数字

console.log(undefined==null) //true
console.log('0'==0) //true 字符串转数字
console.log(0==false) //true 布尔转数字
console.log('0'==false) //2个都转成数字
console.log(null==false) //false
console.log(undefined==false)//false

一辈子很短,努力的做好两件事就好;第一件事是热爱生活,好好的去爱身边的人;第二件事是努力学习,在工作中取得不一样的成绩,实现自己的价值,而不是仅仅为了赚钱;

本面试题为前端常考面试题,后续有机会继续完善。我是歌谣,一个沉迷于故事的讲述者。

欢迎一起私信交流。

“睡服“面试官系列之各系列目录汇总(建议学习收藏)

“约见”面试官系列之常见面试题之第五十七篇之强制类型转换(建议收藏)相关推荐

  1. “约见”面试官系列之常见面试题之第八十一篇之webpack(建议收藏)

    从我进公司那天起,公司就一直在用webpack,这是一个前端自动打包工具,但我以前从来没接触过,不过幸好我聪明机智,天赋异禀,倒是能上手用,只不过有些配置还是看不懂,于是,我就趁着项目空闲时间好好研究 ...

  2. “约见”面试官系列之常见面试题之第七十篇之==和===(建议收藏)

    ==和===的区别== 在比较时等号左右两侧数据类型不同时会先转成相同数据类型,再比较== 是相对比较: === 是绝对比较1.1 字符串 == 数字 :字符串转换成数字console.log(1 = ...

  3. “约见”面试官系列之常见面试题之第八十七篇之ajax发送多个请求优化(建议收藏)

    AJAX中同时发送多个请求(并发)对象处理方法 在javascript:;" rel="nofollow" onClick="javascript:tagsho ...

  4. “约见”面试官系列之常见面试题之第七十七篇之vuex中mutation和action的详细区别 (建议收藏)

    const store = new Vuex.Store({state: {count: 0},mutations: {increment (state) {state.count++}},actio ...

  5. “约见”面试官系列之常见面试题之第六十七篇之jsonp原理和实现(建议收藏)

    一. 同源策略 所有支持Javascript的浏览器都会使用同源策略这个安全策略.看看百度的解释: 同源策略,它是由Netscape提出的一个著名的安全策略. 现在所有支持JavaScript 的浏览 ...

  6. “约见”面试官系列之常见面试题之第五十三篇之网站的资源优化(建议收藏)

    本面试题为前端常考面试题,后续有机会继续完善.我是歌谣,一个沉迷于故事的讲述者. 欢迎一起私信交流. "睡服"面试官系列之各系列目录汇总(建议学习收藏)

  7. “约见”面试官系列之常见面试题之第五十一篇之CSS Sprites(建议收藏)

    CSS Sprites在国内很多人叫css精灵,是一种网页图片应用处理方式.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢 ...

  8. “约见”面试官系列之常见面试题之第五十篇之title和alt的区别(建议收藏)

    html中的title属性和alt属性让人有些混淆. 以前不知道有title这个属性,第一次用到它时,就和alt产生了混淆. 一位朋友告诉我说,alt是图片img标签里用的,title是超链接里用的, ...

  9. “约见”面试官系列之常见面试题之第四十七篇之前端页面的组成(建议收藏)

    最准确的网页设计思路是把网页分成三个层次,即:结构层.表示层.行为层. 网页的结构层(structural layer)由 HTML 或 XHTML 之类的标记语言负责创建.标签,也就是那些出现在尖括 ...

最新文章

  1. 不想当全栈的设计师不是_但我不想成为产品设计师
  2. 11月14号站立会议(从即日14号起到24号截至为final阶段工作期)
  3. el-table 树形表格 自定义展开图标_[shell脚本]表格数据在终端可视化输出
  4. 基于Spring MVC的ECharts动态数据实时展示
  5. was css,Sass无效的CSS…:期望的表达式(例如,1px,粗体),是“{”
  6. Arcgis导入KMZ/KML文件的方法
  7. 数电课设——基于74系列芯片搭建的交通灯控制系统电路
  8. hibernate 注解方式 属性mappedBy详解
  9. 中小学计算机创新教育措施,小学信息技术教学论文计算机教学中的创新教育.docx...
  10. 负面营销 —— 是饮鸩止渴还是引爆流量
  11. 51nod1463 找朋友
  12. LSD(Line Segment Detector)直线提取算法
  13. 【虾皮选品分享】马来西亚/菲律宾市场时尚美妆热销趋势
  14. favicon.ico图标
  15. oracle数据库exp备份表,oracle数据库exp备份表
  16. Angel_天使PE优盘启动工具网络纯净版v2023.01.12
  17. 利用树莓派(3B+)板载蓝牙(ble)实现与蓝牙热敏打印机的通信
  18. for语句java n_JAVA循环for语句
  19. 「九霄龙吟」强龙启动打首板,选股公式指标公式,限时分享 高胜率
  20. html的flash播放器代码,收藏漂亮的flash、各色播放器、以及html代码

热门文章

  1. haut-1280 诡异的迷宫
  2. The 15th UESTC Programming Contest Preliminary H - Hesty Str1ng cdoj1551
  3. java Web监听器导图详解
  4. sql中问号是干什么的??
  5. 高级软件工程课程第一次作业的小结
  6. python3.4学习笔记(九) Python GUI桌面应用开发工具选择
  7. Activity、BroadcastReceiver、Service共同工作的简单例子
  8. 7时过2小时是几时_2017最北师大版二年级下册数学第七单元《时、分、秒》过关检测卷...
  9. 学plc好还是python好_PLC是学西门子的好还是学三菱的?
  10. [Linux] undefined reference to `itoa'