前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >重学javascript 红皮高程(5)

重学javascript 红皮高程(5)

作者头像
web前端教室
发布2018-02-06 11:52:55
6550
发布2018-02-06 11:52:55
举报
文章被收录于专栏:web前端教室web前端教室

JS这项技术,细节到位了,就会一通百通。经常在网上看到说学一个框架,最有效的办法是去看它的源码。但我经常看不懂,为什么呢?因为我基础不好,不明白源码中的一些写法的含义。

例如,

代码语言:js
复制
callback && callback();

//这啥意思?

代码语言:js
复制
obj.length === +obj.length;

//这又是啥意思?

代码语言:js
复制
var arrproto = Array.prototype;
arrproto.slice.call(arguments);

//为啥要这样写?不是都这样写 Array.prototype.slice.call的吗?

这么多的看不懂,当然看不懂那些源码了。所以,一切尽在JS基础之中。

也知道你们不爱看这个,从每天公众号的阅读量上就能看出来。随便写点什么上班、职场、工作中的扯淡事,这阅读量啊,这留言数啊,这粉丝数啊,哗哗的涨,但是没什么用啊,光看这些你能找着工作嘛,看我写那些扯淡的玩艺儿你能通过面试嘛。

写这些东西,其实我根本不关心你们看不看。因为,我本来就有基础,写这些东西,等于是我学习之后又复习一遍,不管你们会没会,反正我是会了。哈哈,,

来,今天继续学习浮点数,我再复习下“e表示法”,即科学计数法。

这种方法一般用在特别大或小的数字上,就是零特别多的数。

用e表示法表示的数,等于e前面的数值乘以10的指数次幂,

这句话是TMD的什么意思?

幂?!杨幂?小学文化的我表示完全看不懂,,艹

往下看下一行的例子吧,

代码语言:js
复制
var floatNum = 3.125e7;

//说是等于31250000,,,-_-

书上第28页的解释说,

前面是一个数值,应该是3.125

中间是字母e,大小写都有,,

后面是10的幂中的指数,该幂值与前面的数相乘。

百度了一下,幂就是指数。

例如,2的3次方,就是3个2相乘嘛,2*2*2=8;

这个3,就是幂,就是指数。

按这个套路,那上面那句“e前面的数值乘以10的指数次幂”,

翻译一下应该就是,“e前面的数值乘以(7个10相乘)”,

再翻译一下应该就是,“e前面的数值乘以(10000000)”,

再再翻译一下应该就是,“3.125 乘以 10000000”。

结果等于 3.1250000

这个e表示法,也可以表示极小数,0.00000003 什么的,可以换成3e-8之类的。

浮点数的最高精度就是17位了,但它的精确度不如整数,因为它会搞个什么舍入之类的。

总之,书中第28页告诫我们说,“永远不要测试某个特定的浮点数值”。

^_^

好烧脑啊,果然智商是我的硬伤。

今天就到这吧

重学javascript 红皮高程(4)

重学javascript 红皮高程(3)

重学javascript 红皮高程(2)

重学javascript 红皮高程(1)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档