简单谈谈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 相关文章推荐
JS弹出对话框返回值代码(asp.net后台)
Dec 28 Javascript
无缝滚动js代码通俗易懂(自写)
Jun 19 Javascript
Firefox和IE兼容性问题及解决方法总结
Oct 08 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
Nov 06 Javascript
点击button获取text内容并改变样式的js实现
Sep 09 Javascript
jQuery实现强制cookie过期方法汇总
May 22 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
Oct 10 Javascript
Bootstrap table简单使用总结
Feb 15 Javascript
JS简单获得节点元素的方法示例
Feb 10 Javascript
详解Vue中CSS样式穿透问题
Sep 12 Javascript
layui上传图片到服务器的非项目目录下的方法
Sep 26 Javascript
Vue+TypeScript中处理computed方式
Apr 02 Vue.js
实现两个文本框同时输入的实例
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
用mysql触发器自动更新memcache的实现代码
2009/10/11 PHP
php中in_array函数用法探究
2014/11/25 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
php实现在服务器上创建目录的方法
2015/03/16 PHP
PHP读取文件的常见几种方法
2016/11/03 PHP
Zend Framework前端控制器用法示例
2016/12/11 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
javascript 单选框,多选框美化代码
2008/08/01 Javascript
checkbox 多选框 联动实现代码
2008/10/22 Javascript
把html页面的部分内容保存成新的html文件的jquery代码
2009/11/12 Javascript
jquery聚焦文本框与扩展文本框聚焦方法
2012/10/12 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
基于JavaScript实现购物网站商品放大镜效果
2016/09/06 Javascript
JavaScript实现Java中Map容器的方法
2016/10/09 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
Bootstrap多级菜单的实现代码
2017/05/23 Javascript
微信小程序使用npm支持踩坑
2018/11/07 Javascript
JavaScript解析JSON数据示例
2019/07/16 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
2020/04/07 Javascript
JavaScript数组常用的增删改查与其他属性详解
2020/10/13 Javascript
Python爬取读者并制作成PDF
2015/03/10 Python
Python中的字典与成员运算符初步探究
2015/10/13 Python
Python Dataframe 指定多列去重、求差集的方法
2018/07/10 Python
python 读取竖线分隔符的文本方法
2018/12/20 Python
详解小白之KMP算法及python实现
2019/04/04 Python
python 中的9个实用技巧,助你提高开发效率
2020/08/30 Python
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
Linux中如何用命令创建目录
2016/12/02 面试题
运动会口号16字
2014/06/07 职场文书
2014年语文教研组工作总结
2014/12/06 职场文书
办公用品质量保证书
2015/05/11 职场文书
毕业论文答辩开场白和答辩技巧
2015/05/27 职场文书
惊天动地观后感
2015/06/10 职场文书
导游词之北京明十三陵
2019/10/28 职场文书