js基本数据类型之间的转换
常见五大基本数据类型
1.number
2.string
3.boolean
4.undefined
5.null
一.转换为string
①调用toString() 方法
因为null和undefined没有toString()方法,所以,不能通过这样的方式进行转换。
//number类型转换成String
var a = 123;
var b = a.toString();
console.log(typeof b + " " + b); //string 123
//Boolean类型转换成String
a = true;
b = a.toString();
console.log(typeof b + " " + b); //string true
②通过String()函数
//undefined类型转换成String
var a;
var b = String(a);
console.log(typeof b + " " + b); //string undefined
//null类型转换成String
a = null;
b = String(a);
console.log(typeof b + " " + b); //string null
//number类型转换成String
a = 123;
b = String(a);
console.log(typeof b + " " + b); //string 123
//Boolean类型转换成String
a = true;
b = a.toString();
console.log(typeof b + " " + b); //string true
③加一个空字符串( + “ ” )
//undefined类型转换成String
var a;
var b = a + "";
console.log(typeof b + " " + b); //string undefined
//null类型转换成String
a = null;
b = a + "";
console.log(typeof b + " " + b); //string null
//number类型转换成String
a = 123;
b = a + "";
console.log(typeof b + " " + b); //string 123
//Boolean类型转换成String
a = true;
b = a + "";
console.log(typeof b + " " + b); //string true
二.转换成number类型
①使用Number()函数
//字符串转数字
//纯数字字符串,直接转
var a = "123";
var b = Number(a);
console.log(typeof b + " " + b); //number 123
//含有非数字字符,转换为NaN
a = "123x";
b = Number(a);
console.log(typeof b + " " + b); //number NaN
//布尔值转数字 true转为1,false转为0
var a = true;
var b = Number(a);
console.log(typeof b + " " + b); //number 1
a = false;
b = Number(a);
console.log(typeof b + " " + b); //number 0
//null转为0
var a = null;
var b = Number(a);
console.log(typeof b + " " + b); //number 0
//undefined转换为NaN
var a;
var b = Number(a);
console.log(typeof b + " " + b); //number NaN
②使用parseInt() 或 parseFloat() 函数
和Number()的不同
对于非字符串类型,先转换为字符串
从左向右遍历字符串,直到碰到非数字字符进行“截断”;如果第一个字符就是非数字字符,转换为NaN
parseInt()方法首先查看位置0处的 字符,判断它是否是个有效数字;如果不是,该方法将返回NaN,不再继续执行其他操作。但如果该字符是有效数字,该方法将查看位置1处的字符,进行同样的 测试。这一过程将持续到发现非有效数字的字符为止,此时parseInt()将把该字符之前的字符串转换成数字。
parseInt("1234blue");//return 1234
parseInt("22.5");// return 22 对于整数来说,小数点是无效字符
parseInt("blue");//return NaN
//parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。基是由parseInt()方法的第二个参数指定的。
//例如:
parseInt("AF",16); //return 175 十六进制
parseInt("10",2);//return 2 二进制
parseInt("10",8);//return 8 八进制
parseInt("10",10);//return 10 十进制
//如果十进制数包含前导0,那么最好采用基数10,这样才不会意外地得到八进制的值。
//例如:
parseInt("010");//return 8
parseInt("010",8);//return 8
parseInt("010",10);//return 10
parseFloat(),从位置0开始查看每个字符,直到找到第一个非有效的字符为止,然后把该字 符之前的字符串转换成数字。
不过,对于这个方法来说,第一个出现的小数点是有效字符。如果有两个小数点,第二个小数点将被看作无效的。
使用parseFloat()方法的另一不同之处在于,字符串必须以十进制形式表示浮点数,而不能用八进制形式或十六进制形式。
parseFloat("1234blue");//return 1234
parseFloat("22.34.5");//return 22.34
parseFloat("0908");//return 908
parseFloat("blue");//return NaN
③通过一元运算符 + (正号)
//undefined转number
var a;
var b = +a;
console.log(typeof b + " " + b); //number NaN
//null转number
a = null;
b = +a;
console.log(typeof b + " " + b); //number 0
//boolean转number
a = true;
b = +a;
console.log(typeof b + " " + b); //number 1
//string转number
a = "123";
b = +a;
console.log(typeof b + " " + b); //number 123
//string转number
a = "123A";
b = +a;
console.log(typeof b + " " + b); //number NaN
三.转换为Boolean
①通过Boolean()函数
共五种情况为false的情况,其他均为true
Boolean(0) //转换为false
Boolean(NaN) //转换为false
Boolean("")(空串) //转换为false
Boolan(null) //转换为false
Boolean(undefined) //转换为false
②两次取反!!
与使用Boolean()结果一致
js基本数据类型之间的转换的更多相关文章
- 系统学习(javascript)_基础(数据类型之间的转换)
在js中数据类型转换一般分为两种,即强制类型转换和隐式类型转换(利用javascript弱变量类型转换). 强制转换: 利用js提供的函数parseInt(),parseFloat(),Number( ...
- java中的、标识符、运算符以及数据类型之间的转换。
---恢复内容开始--- 数据类型之间的转换: 1:自动转换:就是不用说出要转换成什么类型,由java中的虚拟机自动将小数据类型转换成大数据类型,但大数据中的数据精度有可能被破坏. 2:强制转换:强制 ...
- Java基础——数据类型之间的转换
Java数据类型分为三大类,即布尔型.字符型和数值型.其中数值型又分为整型和浮点型.Java的基本数据类型(8种)为布尔型boolean(1字节):字符型char(2字节):整型byte(1字节).s ...
- Java中的基本数据类型和基本数据类型之间的转换
在Java中有8中基本数据类型,分别为: 整型: byte.short.int.long 浮点型:float.double 布尔型:boolean 字符型:char. byte: 8位, 封装 ...
- JavaSE:数据类型之间的转换(附常见面试题)
数据类型之间的转换 分为以下几种情况: 1)低级到高级的自动类型转换: 2)高级到低级的强制类型转换(会导致溢出或丢失精度): 3)基本类型向类类型转换: 4)基本类型向字符串的转换: 5)类类型向字 ...
- 浅谈C#语言中的各种数据类型,与数据类型之间的转换
什么是数据类型? 数据类型,百度百科是这样解释的:数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作.这样的解释对于一个初学者来说未必太过于深奥. 简单点说,数据类型就是不同长度的 ...
- 10-10C#基础---数据类型之间的转换
10-10 C#基础数据类型转换(熟练掌握) 第一课 数据类型之间的转换 基本类型的转换:自动转换(隐式转换)和强制转换(显示转换) 装箱转换:允许值类型隐式转换成引用类型. 拆箱转换:允许将引用类 ...
- 记录我的 python 学习历程-Day07 基础数据类型进阶 / 数据类型之间的转换 / 基础数据类型总结 / 编码的进阶
基础数据类型 str(字符串) str:补充方法练习一遍就行 s.capitalize() 首字母大写,其余变小写 s = 'dyLAn' print(s.capitalize()) # Dylan ...
- golang 数据类型之间的转换
一.基本数据类型之间的转换 1.string到int int,err:=strconv.Atoi(string) 2.string到int64 int64, err := strconv.ParseI ...
随机推荐
- JDK1.7HashMap死锁
JDK1.7HashMap多线程问题 Java技术交流群:737698533 在看之前可以先看看JDK1.7的Hashmap的源码 HashMap在多线程情况下是不安全的,一个是数据的准确性问题,一个 ...
- Python 数值中的下划线是怎么回事?
花下猫语:Python 中下划线的用法令人叹为观止,相信你已在各种文章或教程中见识过了.在 2016 年的 3.6 版本之后,Python 还引入了一种新的语法,使得下划线也可以出现在数值中.这篇翻译 ...
- 使用Fileupload完成文件的上传下载
目录 使用Fileupload完成文件的上传下载 为什么需要进行文件上传下载? 引入jar包 文件上传 注意事项 编写一个简单的文件上传jsp页面 编写Servlet Student类用于封装数据,后 ...
- 自学linux——4.Linux的自有服务(基础篇)
linux自有服务(内置) 一.运行级别(模式) 在Linux中存在一个进程:init,进程id是1. 查看进程:#ps -ef|grep init 对应的配置文件:inittab(运行级别配置文件位 ...
- 606页Android最新面试题含答案,助力成为offer收割机
如何才能通过一线互联网公司面试?相信这是很多人的疑惑,希望看完本篇文章能给大家一些启发. 下面是我花了将近一个月的时间整理的一份面试题库.这些面试题,包括我本人自己去面试遇到的,还有其他人员去面试遇到 ...
- 分享我的CleanArchitecture for Razor Page项目模板
这个项目是参考和整合了jasontaylordev/CleanArchitecture 和 blazorhero/CleanArchitecture 代码基础上,重构出来的新的项目,这两个项目都是非常 ...
- Android Hello World程序开发过程
按照Building Your First App,详细过程如下: 安装SDK(如果网速慢,需要用离线安装的方法,见笔记 离线安装Android SDK的方法 ): 采用命令行开发方法(不用装Ecli ...
- 熬夜肝了一份 C++/Linux 开发学习路线
大家好,我是帅地. 之前写过几篇学习路线的文章 前端开发学习路线 Java 后端开发学习路线 一般开发岗主流的就是 Java 后台开发,前端开发以及 C++ 后台开发,现在 Go 开发也是越来越多了, ...
- maven的setting配置远程仓库
maven的setting,配置远程库. <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mi ...
- Python 应用爬虫下载QQ音乐
Python应用爬虫下载QQ音乐 目录: 1.简介怎样实现下载QQ音乐的过程: 2.代码 1.下载QQ音乐的过程 首先我们先来到QQ音乐的官网: https://y.qq.com/,在搜索栏上输入一首 ...