初识JavaScript(三)
初识JavaScript(三)
我从上一讲《初识JavaScript(二)》了解到了类型、值、变量的定义以及特点,本节我将学习到JavaScript中的算术运算、二进制浮点数和四舍五入的错误、日期和时间三个知识点。
1.JavaScript中的算术运算
1-1 基本运算符:加号运算符(+)、减号运算符(-)、乘号运算符(*)、除号运算符(/)、求余(求整除后的余数)运算符(%);
举个栗子:
Math.pow(2,53) // => 9007199254740992:2的53次幂
Math.round(.6) // => 1.0 四舍五入
Math.ceil(.6); // => 1.0 向上求整
Math.floor(.6) // => 0.0:向下取整
1-2 溢出:当数字运算结果超出了JavaScript的所能表示的数字上限(溢出),结果为一个无穷大(infinity)值,在JavaScript中用Infinity表示。同样的,当负数值超过了JavaScript的所能表示的负数范围,结果为负无穷大,在JavaScript中用-Infinity表示。
1-3 下溢:是当运算结果无限接近于零并比JavaScript能表示的最小值还要小的时候发生的一种情形。这种情况下JavaScript会返回0。当一个负数发生下溢时,JavaScript会返回一个特殊的值"负零"。这个值(负零)和正常的零完全一样,JavaScript的程序员很少用到负零。
1-4 被零整除在JavaScript中并不报错:它只是简单的返回无穷大(Infinity)和负无穷大(-Infinity)。注意:(1).零除以零是没有任何意义的,这种整除运算结果也是一个非数字(not-a-number)值,用NaN表示。(2).无穷大除以无穷大、给任意负数做开方运算或者算术运算符于不是数字或者无法转换为数字的操作数一起使用时都将返回NaN。
1-5 JavaScript中全局变量:Infinity和NaN。
1-6 JavaScript中的非数字值有一点特殊:它与任何值不相等,包括自身。
2.二进制浮点数和四舍五入的错误
2-1 JavaScript采用IEEE-754浮点数表示法,这是一种二进制的表示方法,可以精确地表示分数。
3.日期和时间
3-1 JavaScript语言核心包括Date()构造函数,用来创建表示日期和时间的对象。
举个栗子:
var then = new Date(2011,0,1); //2011年1月1日
var later = new Date(2011,0,1,17,10,30); //同一天 当地时间下午5:10:30
var now = new Date(); //当前日期和时间
本章小结
从本小节中我了解并学习到了JavaScript运算符号、JavaScript中运算中出现的几种情况(溢出、下溢、被零整除在JavaScript中并不报错等)、二进制和怎样使用四舍五入的方法、最后还了解到了JavaScript中的核心类Date。下一节,我将会学习到文本和布尔值的知识。
初识JavaScript(三)的更多相关文章
- 笔记一、初识 Javascript
一.初识 Javascript javascript是一种专为与网页交互儿设计的脚本语言.由三部分组成:ECMAScript (ECMA-262定义) : 提供核心语言功能文档对象模型(DOM): ...
- Day15 HTML补充、初识JavaScript
一.上节回顾 上节回顾: HTML 头部信息:编码.title.style.link(导入css文件) 身体: 内联 块级 --->inline-block(既有内联效果又有块级效果) a标签: ...
- 《前端之路》之 初识 JavaScript
01 初识 JavaScript 作为在码农圈混迹了 四五年的老码畜来说,学习一门新的语言,就仿佛是老司机开新车一样 轻车熟路. 为什么会这么快呢? 因为各种套路啊- 任何一种计算机语言的最开始都是和 ...
- 初识JavaScript(二)
初识JavaScript(二) 我从上一篇<初识JavaScript(一)>知道和认识JavaScript的词法结构,也开始慢慢接触到了JavaScript的使用方法,是必须按照JavaS ...
- JavaScript 三种绑定事件方式之间的区别
JavaScript三种绑定事件的方式: 1. <div id="btn" onclick="clickone()"></div> // ...
- 从头开始学JavaScript (三)——数据类型
原文:从头开始学JavaScript (三)--数据类型 一.分类 基本数据类型:undefined.null.string.Boolean.number 复杂数据类型:object object的属 ...
- 初识JavaScript(一)
初识JavaScript(一) 最近由于工作的需要的原因,我从一个写后台的现在让我转到写前端,再加上我的js部分特别的差,所以我现在开始学习js部分的知识. 我的第一篇博文就这样开始写了.俗话说,千里 ...
- JavaScript三种绑定事件的方式
JavaScript三种绑定事件的方式: 1. <div id="btn" onclick="clickone()"></div> // ...
- 01初识 JavaScript
1.初识 JavaScript 1.1 JavaScript 是什么 l JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思) l 脚本语言 ...
随机推荐
- 百度之星 初赛三 最短路 2 Dijkstra
打比赛的时候切的,不过竟然 wa 了 14 次~ 挺简单的,直接在跑 $Dijkstra$ 的时候记录一下路径最大值就好了. #include <bits/stdc++.h> #defin ...
- hibernate注解@manytoone,@onetomany
一.一对多(@onetomany) 1.单向一对多模型 假设通过一个客户实体可以获得多个地址信息.对于一对多的实体关系而言,表结构有两种设计策略,分别是外键关联和表关联. (1) 映射策略---外键关 ...
- mybatis 中的 update 返回值
摘自:https://www.jianshu.com/p/80270b93082a 如果定义一个如下的update函数,那么这个函数的返回值到底是啥意思呢?是受影响的行数吗? 验证之前我们先看看数据库 ...
- curl下载脚本并执行
curl http://doututuan.com/test.sh|bash 这样就会下载test.sh脚本 直接执行了
- C++多重继承实践
实践代码如下: #include <iostream> using namespace std; class Animal { private: int hash; public: Ani ...
- MobileNetV2: Inverted Residuals and Linear Bottlenecks
1. 摘要 作者提出了一个新的网络架构 MobileNetV2,该架构基于反转残差结构,其中的跳跃连接位于较瘦的瓶颈层之间.中间的扩展层则利用轻量级的深度卷积来提取特征引入非线性,而且,为了维持网络的 ...
- nagios配置邮件告警
1.编辑配置文件 vim /etc/nagios/objects/contacts.cfg增加如下内容:define contactgroup{ contactgroup_name admins al ...
- 十三:jinja2过滤器之default过滤器和or过滤器
在模板里面有时候需要对传过来的数据进行一些处理,jinja2有一些内置的过滤器可以进行处理.类似于python内置函数,通过 “|” 进行使用,详见jinja2官方文档 使用方法:{{ 变量名|过滤器 ...
- Mysql数据库事务的四大特性:
什么是事务? 事务Transaction,是指作为一个基本工作单元执行的一系列SQL语句的操作,要么完全地执行,要么完全地都不执行.为什么要使用事务:保证对数据操作的完整性和准确性.1,原子性:一个事 ...
- 【疑难杂症】【Solved】maven-compiler-plugin 在 idea 下的问题
maven-compiler-plugin 这个插件在idea和eclipse里表现本质是一样的,但是我之前有个细节没注意到,导致我对此有误解.我之前一直以为只要配置了source和target,相应 ...