JS中Number(),parseInt(),parseFloat()和自动类型转换
【参考来源】
https://www.cnblogs.com/yi0921/p/6196841.html
https://blog.csdn.net/u010200222/article/details/10282351
【正文内容】
Number()
-------------------------------------------------------------------------------------
--Number()
--
--
--Boolean值,true->1,false->0。
--
--数字值,整型就是整型,浮点型就是浮点型,科学计数就科学计数
--
--null值,转为0
--
--二进制,八进制,十六进制格式,转为十进制的数值
--
--字符串为空,转为0
--
--字符串中是纯科学计数,数值会直接转为十进制的数值
--
--undefined , 对象 , 数组 ,字符串不为纯数字和科学计数时 返回NaN
------------------------------------------------------------------------------------
//JS区分0和-0
var num = 123;
var num = 123.123;
var num = 0b10;
var num = 010;
var num = 0xff;
var num = 5e2;
var num = 5e-2; var num = NaN; console.log('值: ' , num);
console.log('类型: ' , typeof(num)) //NaN本身为false
//其他类型转为数值失败时都为NaN
console.log(NaN - 100);
if(NaN){
console.log('Yes');
}else{
console.log('No');
} //NaN
var a = '123ad';
//
var a = '123';
//NaN
var a = 'f3ad';
//
var a = false;
//
var a = true;
//NaN
var a = undefined;
var a = new Object();
var a = Array(1,23); //1e+124
var a = 10e123; //
var a = 0b11; //
var a = 0xff; //1.23
var a = 1.23; //
var a = ''; //
var a = '12e2'; //
var a = null; //
var a = 0132; var n = Number(a);
console.log(n);
parseInt()
-----------------------------------------------------------------------------------------------------------------------------------------
--parseInt()
--
--
--数值正常转化,如果为浮点数,则转为整型,舍弃小数点后的数值
--
--数字开头的字符串,只转换数字整数部分,忽略字母部分
--
--二进制,八进制,十六进制转化时,转化为十进制的数值
--
--科学计数法,能解析时正常解析,不能时返回第一个数字
--
--Boolean,undefined , 对象 , 数组 ,空字符串,字符串开头不为纯数字和科学计数时 返回NaN
----------------------------------------------------------------------------------------------------------------------------------------
//
var a = '123ad';
//
var a = '123';
//NaN
var a = 'f3ad';
//NaN
var a = false;
//NaN
var a = true;
//NaN
var a = undefined;
var a = new Object(); //13 第一个值
var a = Array(13,2); //3100000能够解析处时正常解析,不能时只返回第一个数字
var a = 31e5; //
var a = 0b11; //
var a = 0xff; //
var a = 1.23; //NaN
var a = ''; //12 字符串只返回12e舍弃
var a = '12e2'; //NaN
var a = null; //
var a = 1.5; //
var a = 0132; var n = parseInt(a);
console.log(n); var a = parseInt("10",2);
var a = parseInt("FF",16);
var a = parseInt("10",8);
console.log(a);
parseFloat()
--------------------------------------------------------------------------------------------------------------------------------
--parseFloat()
--
--
--数值正常转化,整型为整型,浮点型为浮点型
--
--数字开头的字符串,只转换数字整数部分,忽略字母部分
--
--二进制,八进制,十六进制转化时,转化为十进制的数值
--
--科学计数法,能解析时正常解析,超出范围则返回Infinity
--
--Boolean,undefined , 对象 , 数组 ,空字符串,字符串开头不为纯数字和科学计数时 返回NaN
--
--不能有多个小数点报语法错误
--------------------------------------------------------------------------------------------------------------------------------
//
var a = '123ad';
//
var a = '123';
//NaN
var a = 'f3ad';
//NaN
var a = false;
//NaN
var a = true;
//NaN
var a = undefined;
var a = new Object(); //13 第一个值
var a = Array(13,2); //3100000 范围过大将转为科学计数法再大将为Infinity
var a = 31e5; //
var a = 0b11; //
var a = 0xff; //1.23
var a = 1.23; //NaN
var a = ''; //
var a = '12e2aa'; //NaN
var a = null; //1.5
var a = 1.5; //
var a = 0132; //
var a = 1.113; var n = parseFloat(a);
console.log(n);
自动类型转换
数字类型: 在字符串环境下 隐身转换为字符串
字符串类型 在数字环境下,可以隐式转换为字符串中的数字或NaN;
在布尔环境下,可以隐式转换为true.
空字符串:在数字环境下可以隐式转换为0;
在布尔环境下可以隐式转换为false;
字符串'true': 在数字环境下可以隐式转换位1;布尔为true
字符串'false': 数字环境为0,布尔位false
null: 在字符串环境下,转换为'null';
数字环境下,转换为0,布尔环境下,转为false
NaN: 在字符串环境下可以隐式转换为'NaN';
布尔环境下,转换为false
undefined: 字符串环境下,转换为“undefined”,
数字环境下,转为NaN,
布尔下,转为false
true: 字符串转为'true',数字环境下转为1
false: 字符串转为'false',数字环境下转为0
JS中Number(),parseInt(),parseFloat()和自动类型转换的更多相关文章
- Number,parseInt,parseFloat函数
Number,parseInt,parseFloat函数 console.group('Number'); console.log(Number( console.log(Number( consol ...
- 详解JS中Number()、parseInt()和parseFloat()的区别
三者的作用: Number(): 可以用于任何数据类型转换成数值: parseInt().parseFloat(): 专门用于把字符串转换成数值: 一.Number( ): (1)如果是Boolean ...
- Number(),parseInt(),parseFloat(),Math.round(),Math.floor(),Math.ceil()对比横评
首先,这些处理方法可分为三类. 1,只用来处理数字取整问题的:Math.round(),Math.floor(),Math.ceil(): 2,专门用于把字符串转化成数值:parseInt(),par ...
- java重载中的基本类型的自动类型转换
当传递到函数的参数的数据类型表示的范围小于函数形参的参数类型遵循如下原则 : char类型比较特殊, 直接转换为int: char ->int ->long->float-> ...
- js中Number()、parseInt()和parseFloat()的区别
一:Number() 如果是Boolean值,true和false值将分别被转换为1和0. 如果是数字值,只是简单的传入和返回. 如果是null值,返回0. 如果是undefined,返回NaN. 如 ...
- js中Number()、parseInt()和parseFloat()的区别进行详细介绍
http://www.jb51.net/article/100606.htm 区别: parseFloat,parseInt 解析的过程中如果前面有空格,结果不会有任何影响,Number解析的时候结 ...
- JavaScript中Number(),parseInt()和parseFloat()区别
parseInt() 函数可解析一个字符串,并返回一个整数; parseFloat() 函数可解析一个字符串,并返回一个浮点数, 以上都是截取转换,具体代码如下: alert(parseInt(&qu ...
- js中Number对象与MATH方法整理总结
W3C的文档: Number 对象属性 属性 描述 constructor 返回对创建此对象的 Number 函数的引用. MAX_VALUE 可表示的最大的数. MIN_VALUE 可表示的最小的数 ...
- Number(), parseInt(), parseFloat()
var n="100.11px";console.log(Number(n));//NaNconsole.log(parseInt(n));//100console.log(par ...
随机推荐
- LVDS时序分析
LVDS时序分析 2012年05月07日 11:48:08 Walle 阅读数:3355 标签: 平台工作 最近在调试基于telechip平台的LVDS驱动,一开始对该平台的LVDS时序不是很了解 ...
- Literal 字面值 字面量 的理解
Literal 字面值 字面量 Literal, 在程序语言中,指表示某种数据值的符码.如,123 是整数值符码, 3.14 是浮点值符码,abcd 是字串值符码,True, False, 是逻辑值符 ...
- Hive 实现 wordcount
创建表: create table hive_wordcount(context string); load data local inpath '/home/hadoop/files/hellowo ...
- 实现Repeater控件的记录单选
有朋友问及,在Repeater控件中第一列放置一个RadioButton,实现对记录的单选. 下面Insus.NET想举个例子来实现与说明. 为Repeater控件准备数据: 在ASPX网页上,写好R ...
- HTML 图片轮播制作工具
下载地址:http://wowslider.com/download/wowslider-win-setup.zip?utm_source=free_downl_win&utm_medium= ...
- VS2015 搭建 Asp.net core 开发环境
1.首先你得装个vs2015 并且保证已经升级至 update3及以上(此处附上一个vs2015带up3的下载链接: ed2k://|file|cn_visual_studio_enterprise_ ...
- Hybrid小程序混合开发之路 - 数据交互
HTML+CSS是历史悠久.超高自由度.控制精准.表现能力极强.编码简单.学习门槛超低.真跨平台的一种UI界面开发方式. 本文介绍的是微信小程序和H5混合开发的一种数据交互方式. 很多应用在原生界面中 ...
- .Net架构篇:思考如何设计一款实用的分布式监控系统?
前言 无论从最早期的unix操作系统,还是曾经大行其道的单体式应用,还是现在日益流行的微服务架构,始终都离不开监控的身影.如windows的任务管理器,linux的top命令,都可以看作是监控的面板. ...
- 类似于PLC上升沿的TRIO代码示例
需求: 一个自复位按钮,控制灯泡的亮与灭(按钮按一次灯亮,再按一次灯灭依次循环). 简短的代码,若大家有更好的思路可以评论区留言. DIM in_button,op_lamp,var_middl ...
- sqli-labs less 1-4
sqli-labs less 1-4 数字型注入 当输入的参数为整形时,如果存在注入漏洞,可以认为是数字型注入. 测试步骤: (1) 加单引号,URL:www.text.com/text.php?id ...