JS学习笔记1数值

js的话,从大学开始已经零零碎碎的学了很多,不管是看别人的博文,还是看w3school,或者看一些盗版的电子书。不过也就半调子的水平,要写个功能出来也会,但要代码写的漂亮,还是没到这种层次。后来接触了JQuery,这把小瑞士军刀确实好用,就快让我彻底忘记如何写js了。于是决定学习一下JQuery的源码,突然醒悟,已经看不懂js了。所以到皮皮上下载了一本《javascript权威指南》,我去,1k多页啊,慢慢啃吧。

考虑到目前web前端发展那么火,而且自己也挺喜欢这块,所以想打打基础。框架满天飞的年代,还是要把握基础啊!

从这篇博文开始,我要慢慢去啃js了,因为学过的东西肯定会忘记,所以记笔记是一定要的。并且把零碎知识记录在blog中,后续用搜索引擎查找也比较方便。Let’s go…

1、js整数

123是js中的直接量整数,十进制

同时js还支持十六进制,以0x或0X开头,例如:0xff表示十进制255;十六进制用0-9和字母a(A)-f(F)表示。

2、浮点数

表示方法[digits][.digits][(E|e)[(+|-)]digits]

例如:3.14

.1234

0.1234

6.043e23  //6.043 x 10^23

6.043e-23  //6.043 x 10^-23

3、运算

js支持+ – * /除法 和 %求余,同时可以使用Math对象定义的函数,后面文章会做笔记

js在运算溢出、下溢 或被0整除的时候不会报错。

当运算结果超过js所能表达的上限时,结果是一个特殊的无穷大 Infinity(英文infinity无穷,finity有限)

当负数无穷大时,为-Infinity

下溢,是指结果无限趋近0,并且比js可以表示的最小值还小,此时js会返回0

被0整除,会得到Infinity或-Infinity,但是0整除0是没有意义的,此时返回NaN

对Infinity进行运算操作,最终结果都是Infinity或者-Infinity

4、isNaN()和isFinity()方法

NaN是一个特殊的值,它不与任何值相等,包括自身,所以不能通过x==NaN来判断一个值是否为NaN,但是可以通过x!=x来判断。当值是NaN时,x!=x返回true,这也是isNaN()方法的原理;

类似的方法isFinity(),仅当值不是NaN,Infinity,-Infinity的时候返回true

5、浮点数精度

二进制浮点数表示法并不能准确的表示类似0.1这样的十进制小数,例如:

var x = .3 - .2;
var y = .2 - .1;
x == y //false
x == .1 //false
y == .1 //true


这种舍入误差并非仅在js中有,但是js提供的精度已经足够用于计算,只有在比较大小时,会出现这种不等的情况。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值