简单谈谈js的数据类型


Posted in Javascript onSeptember 25, 2017

近期做一些项目的时候发现,自己的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)       //2的53次幂也就是8007199254740992
  Math.round(.6)       //1.0  四舍五入
  Math.ceil(.6)        //1.0   向上取整
  Math.floor(.6)       //0.0   向下取整
  Math.abs(-5)        //5    求绝对值
  Math.max(x,y.z)       //返回最大值
  Math.min(x,y.z)       //返回最小值
  Math.random()       //生成一个大于等于0小于1的伪随机数
  Math.PI           //π  圆周率
  Math.E           //e  自然对数的底数
  Math.sqrt(3)        //3的平方根
  Math.pow(3,1/3)        //3的立方根
  Math.sin(0)           //三角函数:还有cos()和atan等

js采用了IEEE-754浮点数表示法,这是一种二进制表示法,可以精确的表示分数,比如1/2,、1/8和1/1024,但是我们常用的分数都是十进制的分数1/10/1/100等。二进制浮点数表示法并不能精确表示类似0.1这样简单的数字。

比如

0.3-0.2是不等于0.2-0.1的,在真实的运行环境下
0.3-0.2=0.09999999999999998   而
0.2-0.1=0.1
这是由于舍入误差导致的

数字类型的内容大概讲完了,下一章我会为大家讲述第二种数据类型——字符串

以上这篇简单谈谈js的数据类型就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在服务端(Page.Write)调用自定义的JS方法详解
Aug 09 Javascript
判断日期是否能跨月查询的js代码
Jul 25 Javascript
JQuery 给元素绑定click事件多次执行的解决方法
Sep 09 Javascript
常用的JavaScript WEB操作方法分享
Feb 28 Javascript
JavaScript实现梯形乘法表的方法
Apr 25 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
Apr 27 Javascript
解决同一页面中两个iframe互相调用jquery,js函数的方法
Dec 12 Javascript
flexslider.js实现移动端轮播
Feb 05 Javascript
JS排序之选择排序详解
Apr 08 Javascript
详解Vue.js组件可复用性的混合(mixin)方式和自定义指令
Sep 06 Javascript
微信小程序提取公用函数到util.js及使用方法示例
Jan 10 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
Apr 30 jQuery
实现两个文本框同时输入的实例
Sep 25 #Javascript
zTree jQuery 树插件的使用(实例讲解)
Sep 25 #jQuery
对于input 框限定输入值为浮点型的js代码
Sep 25 #Javascript
静态页面实现 include 引入公用代码的示例
Sep 25 #Javascript
React学习之事件绑定的几种方法对比
Sep 24 #Javascript
一文让你彻底搞清楚javascript中的require、import与export
Sep 24 #Javascript
通过源码分析Vue的双向数据绑定详解
Sep 24 #Javascript
You might like
深入php常用函数的使用汇总
2013/06/08 PHP
php下载excel无法打开的解决方法
2013/12/24 PHP
php实例分享之mysql数据备份
2014/05/19 PHP
Flash+XML滚动新闻代码 无图片 附源码下载
2007/11/22 Javascript
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
asp.net 30分钟掌握无刷新 Repeater
2011/09/16 Javascript
通过一段代码简单说js中的this的使用
2013/07/23 Javascript
js 鼠标移动显示图片的简单实例
2013/12/25 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
javascript实现下拉提示选择框
2015/12/29 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
webpack4.0打包优化策略整理小结
2018/03/30 Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
2018/05/16 Javascript
浅谈Vue初学之props的驼峰命名
2018/07/19 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
JavaScript实现单点登录的示例
2020/09/23 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
对于Python的框架中一些会话程序的管理
2015/04/20 Python
django admin添加数据自动记录user到表中的实现方法
2018/01/05 Python
在NumPy中创建空数组/矩阵的方法
2018/06/15 Python
详解Python list和numpy array的存储和读取方法
2019/11/06 Python
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
台湾旅游网站:雄狮旅游网
2017/08/16 全球购物
德国柯吉澳趣味家居:Koziol
2017/08/24 全球购物
《玩具柜台前的孩子》教学反思
2014/02/13 职场文书
写求职信有哪些注意事项
2014/05/08 职场文书
法学自荐信
2014/06/20 职场文书
会计岗位说明书
2014/07/29 职场文书
亲子运动会的活动方案
2014/08/17 职场文书
个人查摆剖析材料
2014/10/16 职场文书
岗位聘任协议书
2015/09/21 职场文书
巾帼建功标兵先进事迹材料
2016/02/29 职场文书