首页 > 代码库 > 数学数学
数学数学
从小数学不好。
现在每次看到Math对象里面的方法,脑子就闪过一道白光:这方法是干什么来着?
貌似以前只用过ceil,floor,random,round
floor(),取最小值
ceil(),取最大值
round(),取最近值,正好一半(0.5)的时候,取最大值
random(),不用说,范围是0到1之间小数
今天遇到 Math.abs(),取的是绝对值
没用过的
max(,) 和 min(,)是比较后取两位中大的和小的
在js中的所有类型都是弱数据类型,也就是说不管什么类型都是用var 声明,具体是什么类型就看你给它付什么值。
有时候为了逻辑判断,会用数字与布尔型直接运算。
比如:
carousel.prototype = { glue: false, var totalMoved = this.vertical ? ((this.dy % this.myDivHeight) / this.myDivHeight * 100) * -1 : ((this.dx % this.myDivWidth) / this.myDivWidth * 100) * -1; // get a percentage of movement. touchMove: function(e) { if (!this.okToMove) { oldStateOkToMove = this.okToMove; this.okToMove = this.glue ? Math.abs(totalMoved) > this.glue && Math.abs(totalMoved) < (100 - this.glue) : true; if (this.okToMove && !oldStateOkToMove) { $.trigger(this, "movestart", [this.el]); } }}
测了一下:
此处可见,--执行的时候,glue还是0,执行过后,glue才变成-1的。
js有什么不明白的,算不清楚的,都可以在console里面测一测!这也是学习的诀窍之一。
前面的例子中还有一句很长很长的:
var totalMoved = this.vertical ? ((this.dy % this.myDivHeight) / this.myDivHeight * 100) * -1 : ((this.dx % this.myDivWidth) / this.myDivWidth * 100) * -1;
注释说是把运动距离取成百分比,用到运算符%
% | 求余数 (保留整数) | x=5%2 | x=1 |
这也是除了加减乘除以外唯一的算数运算符了,要牢记。
另外,三目运算符比较长,也要明确 ?前面是条件,问号后面是true和false的分别取值。
数学数学
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。