js有六种原始类型:undefined、null、string、number、boolean、object(Array和Function都是特殊的Object),它们之间可以相互转换
Number类型整数类型可以用四种进制表示,最常见的是10进制
10进制
16进制 以0x开头
8进制 以0开头,如果后面包含0-7以外的数字,视为是10进制
2进制 以0b开头,如果后面包含0-1以外的数字,会报错
浮点数,浮点数的保存空间是整数的两倍,所以对于小数点后为空,或者小数点后为0的浮点数,会直接转换为整数保存。
1.0 1.
如果整数位为空,可以省略,例如
.123
但是这种方法不推荐,可以采用科学计数法来表示浮点数
1.123e10 .123E10
javascript数字同样采用IEEE754数值的浮点计算,会出现舍入误差
0.1 + 0.2 === 0.3 ? false
有几个特殊的值
Number.MAX_VALUE Number.MIN_VALUE Number.NEGATIVE_INFINITY Number.POSITIVE_INFINITY -Infinity Infinity NaN
提供了全局的isNaN方法来判断一个数是否是NaN,注意isNaN会尝试将这个变量转换成数字,如果不能转换成数字,直接返回为true,能转换成数字,不是NaN,返回false
类型转换 其它类型转换成booleanundefined/null => false "" => false 0/+0/-0/NaN => false 其余都转换成true其它类型转换成数字
其它类型转换为数字有三个方法,Number()、parseInt()、parseFloat(),在变量前面加上+号等于调用Number方法
Number方法null => 0 undefined => NaN false => 0 true => 1
string:
1.只包含"整数"
2.只包含"浮点数"
3.只包含"十六进制数"
4.只包含"二进制数"
5.不识别"八进制",会忽略前导的0
转换成数字
6.其余情况都为NaN
"23" => 23 "1.23" => 1.23 "1." => 1 "1e2" => 100 "0xa" => 10 "0x10" => 2
object:
先调用valueOf,如果valueOf返回值为原始值,则转换成数字,如果为对象,返回NaN,不会再对返回的对象进行valueOf和toString的解析,如果没有valueOf,则调用toStringparseInt方法
尽量解析,对于八进制,es3引擎会解析为8进制,es5引擎会忽略开头的0,为了减少这种歧义,可以为parseInt加上第二个参数,用来指定进制
注意:parseInt("")返回NaNparseFloat
忽略第二个小数点
其它类型转换成string除了null和undefined都有toString方法,如果不清楚是否是null和undefined,可以使用String()方法
toString方法数字调用toString方法时可以加上参数,用来确定是转换成什么进制的字符串
String方法如果该变量有toString方法,调用toString方法,包括object如果既有toString方法和valueOf方法,先调用toString方法。
如果null调用返回"null"
如果undefined调用返回"undefined"
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/90777.html
摘要:在此,我们首先根据变量的作用域,将变量划分为三级,具体是全局变量局部变量和参数变量。 【摘要】本文是专为JavaScript入门者而总结的,总体上将JavaScript的基础部分分成了九大块,分别是变量、运算符、数组、流程控制结构、字符串函数、函数基础、DOM操作基础、文档对象模型DOM和正则表达式。 【关键字】变量、运算符、数组、流程控制结构、函数、DOM、正则表达式。 本篇文章的主...
摘要:内置函数和对象中内置了一些函数和对象,很多语言都会有内置的方法,直接可以调用开发。根据语法标准提供的内置函数包括和。注意基础语法提供的内置函数和方法只有这些,像那是浏览器提供给我们的。强制类型转换大家应该都知道。 js基础 - 变量 *大家对js一定不会陌生,入门很简单(普通入门),很多人通过网络资源、书籍、课堂等很多途径学习js,但是有些js基础的只是往往被大家遗漏,本章就从js变量...
摘要:内置函数和对象中内置了一些函数和对象,很多语言都会有内置的方法,直接可以调用开发。根据语法标准提供的内置函数包括和。注意基础语法提供的内置函数和方法只有这些,像那是浏览器提供给我们的。强制类型转换大家应该都知道。 js基础 - 变量 *大家对js一定不会陌生,入门很简单(普通入门),很多人通过网络资源、书籍、课堂等很多途径学习js,但是有些js基础的只是往往被大家遗漏,本章就从js变量...
摘要:介绍编程数据结构,算法,内存分配表单验证需要一门语言可以直接运行在浏览器中,来完成表单验证的功能。 Javascript介绍编程(数据结构,算法,内存分配)表单验证 需要一门语言可以直接运行在浏览器中,来完成表单验证的功能。 浏览器厂商 网景 firefox js 标准 js解释器 IE js js解释器 google js j...
摘要:逻辑运算判断一个变量会被当做还是内置函数和对象中内置了一些函数和对象,直接可以调用开发。根据提供的内置函数包括和。注意基础语法提供的内置函数和方法只有这些,像那是浏览器提供给我们的。 变量类型和计算 1. 变量类型 js变量类型分为基本类型(或者叫值类型)和引用类型。(按照存储方式区分)• 值类型 值类型:Number、String、Boolean、Null、Undefiend;...
阅读 2848·2021-11-22 11:56
阅读 3553·2021-11-15 11:39
阅读 898·2021-09-24 09:48
阅读 757·2021-08-17 10:14
阅读 1321·2019-08-30 15:55
阅读 2753·2019-08-30 15:55
阅读 1310·2019-08-30 15:44
阅读 2774·2019-08-30 10:59