js的数据类型--数字
近期做一些项目的时候发现,自己的js基础还是不够扎实,再看一遍犀牛书,加深自己的理解和印象。所以从这篇文章开始,后面都是关于原生js的一些内容。
这篇文章,我们具体介绍一下js的数据类型其中一种。
- javaScript(以下简称js)的数据类型分为两类:原始类型和对象类型。js的原始类型包括数字、字符串和布尔值。
- js有两个特殊的原始值:null(空)和undefined(未定义),它们不是数字、字符串和布尔值。它们通常分别代表各自特殊类型的唯一成员。
- js中除了数字、字符串、布尔值、null和undefined之外的就是对象了,对象(object)是属性的集合,每个属性都由“名/值对”(值可以是原始值,比如数字、字符串,也可以是对象)构成。
- 普通的js对象是“命名值”的无序集合。js同样定义了一种特殊对象——数组(array),表示带编号的值的有序集合。js专门为数组定义了语法,这个后面我们会有详细的讲述。使数组拥有一些和普通对象不同的特有行为特性。
- js还定义了一种特殊对象——函数。函数具有与它相关联的可执行代码的对象,通过调用函数运行可执行代码,并返回运行结果。和数组一样,函数的行为特征和其他对象都不一样。
- 如果函数用来初始化(使用new运算符)一个新建的对象,我们称为构造函数,每个构造函数定义一个类对象
- 下面我具体的为大家讲解一下数据类型的第一种——数字
- 按照js中的数字格式,能够表示的整数范围是从-9007199254740992~9007199254740992(也就是-253~253)包含边界值。
- 在js中,当一个数字直接出现在js程序中,我们称为数字直接量,js支持多种格式的数字直接量。
- 整型直接量,用一个数字序列表示一个十进制整数,比如:0 3 133333
- 浮点型直接量,浮点型直接量可以含有小数点,比如:3.14 .3333 2.02e23(2.02x1023)e或者E代表多少次幂
- js中的算术运算(+(加)、 -(减)、 x(乘)、 /(除)、 %(取余))除了这些基本的运算符外,js还支持更加复杂的算术运算,这些复杂的运算通过作为Math对象的属性定义的函数和常量来实现:
Math.pow(,) //2的53次幂也就是8007199254740992
Math.round(.) //1.0 四舍五入
Math.ceil(.) //1.0 向上取整
Math.floor(.) //0.0 向下取整
Math.abs(-) //5 求绝对值
Math.max(x,y.z) //返回最大值
Math.min(x,y.z) //返回最小值
Math.random() //生成一个大于等于0小于1的伪随机数
Math.PI //π 圆周率
Math.E //e 自然对数的底数
Math.sqrt() //3的平方根
Math.pow(,/) //3的立方根
Math.sin() //三角函数:还有cos()和atan等
- js采用了IEEE-754浮点数表示法,这是一种二进制表示法,可以精确的表示分数,比如1/2,、1/8和1/1024,但是我们常用的分数都是十进制的分数1/10/1/100等。二进制浮点数表示法并不能精确表示类似0.1这样简单的数字。
- 比如
- js采用了IEEE-754浮点数表示法,这是一种二进制表示法,可以精确的表示分数,比如1/2,、1/8和1/1024,但是我们常用的分数都是十进制的分数1/10/1/100等。二进制浮点数表示法并不能精确表示类似0.1这样简单的数字。
0.3-.2是不等于0.-.1的,在真实的运行环境下
0.3-0.2=0.09999999999999998 而
0.2-0.1=0.1
这是由于舍入误差导致的
数字类型的内容大概讲完了,下一章我会为大家讲述第二种数据类型——字符串
js的数据类型--数字的更多相关文章
- js常用数据类型(Number,String,undefined,boolean) 引用类型( function,object,null ),其他数据类型( 数组Array,时间Date,正则RegExp ),数组与对象的使用
js常用数据类型 数字类型 | 字符串类型 | 未定义类型 | 布尔类型 typeof()函数查看变量类型 数字类型 Number var a1 = 10; var a2 = 3.66; conso ...
- JavaScript知识 一、JS的数据类型
一.JS的数据类型 1.基本类型 JS共有5大基本类型,分别是: 1)Undefined.他只有一个值:undefined.如果一个变量被定义但是没有给他赋值,那么这个时候系统会默认给这个变量赋值为u ...
- JavaScript笔记1———js的数据类型
JS的数据类型有: 1.数值类型(Number):js中所有数字均用浮点数字表示. 可以表示32位(即4字节)的整数,也可以表示64位(即8字节)的浮点数(小数). 也可以用二进制.八进制.十进制.十 ...
- js的数据类型--字符串
js的数据类型——字符串 这篇我们来说说js的第二种数据类型——字符串. js的内置功能之一就是字符串拼接.如果将加号(+)运算符用于数字,表示两数相加.但将它作用于字符串,则表示字符串拼接,将第二个 ...
- JS基本数据类型&流程控制
JS基本数据类型 number ----- 数值 boolean ----- 布尔值 string ----- 字符串 [x,y] -------数组 undefined ...
- js原始数据类型和引用数据类型=>callback数据传输原理
摘要:js的数据类型有种划分方式为 原始数据类型和 引用数据类型. 原始数据类型 存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置.栈区包括了 变量的标识符和变量的值. ...
- js之数据类型(对象类型——构造器对象——对象)
JavaScript中除了原始类型,null,undefined之外就是对象了,对象是属性的集合,每个属性都是由键值对(值可以是原始值,比如说是数字,字符串,也可以是对象)构成的.对象又可分为构造器对 ...
- Python--前端基础之JavaScript(JS的引入方式,JS的变量、常量和标识符,JS的数据类型,运算符,流程控制,JavaScript的对象)
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...
- 关于JS的数据类型与转化(自动与强制)
在我们谈到JS的数据类型转化时,一定会知道分为自动转化和强制转化两种方式吧,通俗来讲,自动就是在某种条件下,电脑浏览器自己会把其他类型的数据转化为相应的数据类型,而强制则是咋们程序员应该手动来做的了, ...
随机推荐
- day-20 tensorflow持久化之入门学习
如果不对模型参数进行保存,当训练结束以后,模型也在内存中被释放,下一轮又需要对模型进行重新训练,有没有一种方法,可以利用之前已经训练好的模型参数值,直接进行模型推理或者继续训练?这里需要引入一个数据之 ...
- The Activation Function in Deep Learning 浅谈深度学习中的激活函数
原文地址:http://www.cnblogs.com/rgvb178/p/6055213.html 版权声明:本文为博主原创文章,未经博主允许不得转载. 激活函数的作用 首先,激活函数不是真的要去激 ...
- OpenGL ES 2.0 -- 制作 3D 彩色旋转三角形 - 顶点着色器 片元着色器 使用详解
最近开始关注OpenGL ES 2.0 这是真正意义上的理解的第一个3D程序 , 从零开始学习 . 案例下载地址 : http://download.csdn.net/detail/han120201 ...
- HashCode和equals的理解
-------------------------------------------------------------------------------------------第一篇博客---- ...
- LintCode-365.二进制中有多少个1
二进制中有多少个1 计算在一个 32 位的整数的二进制表式中有多少个 1. 样例 给定 32 (100000),返回 1 给定 5 (101),返回 2 给定 1023 (111111111),返回 ...
- 关于CString总结
前言:串操作是编程中最常用也最基本的操作之一. 做为VC程序员,无论是菜鸟或高手都曾用过CString.而且好像实际编程中很难离得开它(虽然它不是标准C++中的库).因为MFC中提供的这个类对 我们操 ...
- iOS- 封装单例宏
在项目中,我们需要全局只有一个实例,节省不必要的内存,这时我们就需要使用里单例生成对象. 这时把单例的代码封装成宏,就能方便我们下次使用了. 在.h .m里直接导入头文件,调用 传入类名即可! sin ...
- Js键盘事件全面控制,回车按键事件,键盘对应按键码,按键事件兼容各个浏览器。
在网上查询的按键码如下: 一.键盘按键和键盘对应代码表: 字母按键码A <--------> 65 B <--------> 66 C <--------> 6 ...
- Qt语言家(Qt Linguist)更新翻译报错-Qt5.9-MinGW
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt语言家(Qt Linguist)更新翻译报错-Qt5.9-MinGW 本文地址:h ...
- Flink table&Sql中使用Calcite
Apache Calcite是什么东东 Apache Calcite面向Hadoop新的sql引擎,它提供了标准的SQL语言.多种查询优化和连接各种数据源的能力.除此之外,Calcite还提供了OLA ...