1.含义

强制类型转换指的是将一个数据类型强制转换为其他的数据类型

类型转换主要指,将其他的数据类型,转换为 String Number Boolean即字符串,数值和布尔值

2.将其他的数据类型转换为Sting

1.方式一:

- 调用被转换数据类型的toString()方法
        - 该方法不会影响到原变量,它会将转换结果返回
        - 但是要注意:null和undefined这两个没有toString   调用会报错

a =true;
//调用xxx的yyy()方法,就是xxx.yyy()
a =a.toString();
document.write(typeof a);//string
document.write(a);//true

2.方式二:

- 调用String()函数,并将参数传递给函数
         - 使用String()函数做强制类型转换时,
                 对于Number和Boolean实际上就是调用的toString()方法
                 但是对于null和undefined,就不会调研toString()方法
                 它会将null 直接转换为 "null"
                 将undefined 直接转换为 "undefined"

a=null;
a=String(a);
document.write(typeof a);//string
document.write(a);//null

3.将其他的数据类型转换为Number

1.方式一

使用number()函数

将字符串转换成数字
  1.纯数字:转换成数字

var a="123";
a=Number(a);
console.log(typeof a);//Number
console.log(a);//123

2.有非数字内容:nan

var a="123px";
a = Number(a)
console.log(typeof a);//number
console.log(a);//NaN

3.空窜/全是空格:null
    4.true/false:1/0
    5.null --> 数字0
    6.undefined --> 数字nan

2.方式二

使用parseInt()和parseFloat()函数(专门用于应付字符串)

parseInt()

var a="123px";
a=parseInt(a);
console.log(typeof a);//Number
console.log(a);//123

parseFloat()

parseFloat()和parseInt()类似,不同的是它可以获得有效的小数

var a="133.54px";
a=parseFloat(a);
console.log(typeof a);//Number
console.log(a);//133.54

对非String使用parseInt()或parseFloat()
        它会先将其转换为String然后再操作

3.其他的进制

在JS中,如果需要表示16进制的数字,则需要以0x开头
如果需要表示8进制的数字,则需要以0开头
如果需要表示2进制的数字,则需要以0b开头,但是不是所有浏览器都兼容

//16进制
a=0x10;
a=0xff;//8进制
a=070;//2进制
a=0b10;//像"070"这种字符串,有些浏览器会当成8进制解析吗,有些会当成10进制解析
a="070";//可以在pareeInt()中传递一个第二个参数,来指定数字的进制
a=parseInt(a,8);
console.log(a);

4.将其他的数据类型转换为Boolean

使用boolean()函数
         将数字转换为布尔
                  除了0和NaN,其余的都是true
         将字符串转换为布尔
                  除了空串,其余都是true
                  null和undefined都会转换为false

var a=123;//true
a=456;//true
a=0;//false
a=Infinity;//true
a=NaN;//falsea="true";//true
a="";//falsea=null;//false
a=undefined;//falsea=Boolean(a);

JS中的数据强制类型转换相关推荐

  1. JS中==操作符的强制类型转换规定

    首选判断两者的类型是否相同,如果不相同会进行类型转换,相同的话就比较大小 转换类型 1.字符串和数字之间的相等比较,将字符串转换为数字之后再进行比较大小 1 == '1' --> 1 == 1 ...

  2. js html 处理json数据,JS中Json数据的处理和解析JSON数据的方法详解

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

  3. 深入理解C++中五种强制类型转换的使用场景

    深入理解C++中五种强制类型转换的使用场景 1.C风格的强制类型转换 2.C++风格的强制类型转换 2.1.static_cast 2.1.1.用于基本内置数据类型之间的转换 2.1.2.用于指针之间 ...

  4. C++中4种强制类型转换 ?

    C++中4种强制类型转换 前言 C风格的转换格式很简单,但是有不少缺点 C++中的类型转换: 一.static_cast转换 二.dynamic_cast转换 三.const_cast转换 四.rei ...

  5. 【JavaScript】如何将JS中的数据提交到Servlet服务器中

    功能 用户可以在form表单中输入用户名和密码 点击"改变用户名"."改变密码"."改变隐藏值"按钮后,相应input中的值被改变 注意:此 ...

  6. JS中的数据类型转换:String转换成Number的3种方法

    今天有个学员问了个关于数据类型转换的问题,我觉得这个是可以给大家说一下的. JavaScript中,可以通过以下3种方法来将string值转换成number: 1.调用Number()来对string ...

  7. JS中的数据类型转换

    ES5中一共有6种数据类型,其中5种基本类型(String.Number.Boolean.Null.Undefined),1种引用类型(Object).基本类型值可以相互换转换,并且引用类型值也可以通 ...

  8. html中隐式转换成数字,详解JS中的隐式类型转换

    JS中隐式类型转换 JS中的数据类型 JS中的数据类型分为两大类: 1.基本数据类型: 1.String 字符串 表示一段文本,例如:人的姓名.地址等 2.Number 数值 3.Boolean 布尔 ...

  9. js的数据类型和强制类型转换

    数据类型: 字符串 : 数字: 在js中number的最大值Number.MAX_VALUE大概是10的308次方 如果超过这个数,将显示为infinity(正无穷)当然也有负无穷 ,其type为Nu ...

最新文章

  1. 搞开源也会被死亡恐吓!
  2. Ubuntu Linux配置Nginx+MySQL+PHP+phpMyAdmin详细步骤
  3. 中石油训练赛 - Cafebazaar’s Chess Tournament(FFT)
  4. linux安装mysql5.7.29_linux 之centos7搭建mysql5.7.29的详细过程
  5. 【java】Thread.Sleep 与 Thread.onSpinWait
  6. android http 图片上传,Android okHttp上传图片
  7. 潘多拉固件设置ipv6_k2p路由器PandoraBox潘多拉与openwrt固件配置ipv6地址方法
  8. 传智播客8月C/C++基础班开班
  9. html5 统计图 等值线,浅谈WebGIS等值线模态前端展示生成绘制(算法经验)
  10. BC70 空心三角形图案
  11. hive任务卡在个别reduce的问题分析
  12. 混合云解决方案:统一化、简化、创新化
  13. IOS 如何排除闪退和内存泄漏问题
  14. 天池SQL训练营TASK2打卡
  15. 防止APP被黑客攻击的解决方案
  16. 按键精灵DNF脚本开发第二季
  17. java版MC城市地图
  18. 春运“最土陀螺工长”和他的“幸福工区”
  19. Linux 安装 git
  20. java项目的随机验证码

热门文章

  1. Linux ubuntu Mysql 连接本地ip连接
  2. We7 2.7版:全拖拽建站
  3. 时序逻辑电路的分析与设计
  4. IOS推送-pushy
  5. 什么是梯度消失和梯度爆炸
  6. PCI、AGP、PCIE显卡接口技术详解
  7. 聚来宝的项目怎么样?网赚创业项目介绍
  8. 广联达常用快捷命令合集
  9. android文体风格建议
  10. 【linux encrypt luks 磁盘加密 分区加密】