位置: 编程技术 - 正文

浅谈Javascript中匀速运动的停止条件(细说javascript)

编辑:rootadmin

推荐整理分享浅谈Javascript中匀速运动的停止条件(细说javascript),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript的理解,javascript总结,javascript概述及作用,javascript的,javascript的,细说javascript,javascript概述及作用,javascript的,内容如对您有帮助,希望把文章链接给更多的朋友!

我们先来看下之前的匀速运动的代码,修改了速度speed后会出现怎么样的一个bug。这里加了两个标杆用于测试

其实这样的代码如果把速度改成7这种奇数,而到达目标点却是一个整数,这样就会出现未能达目标点或超过目标点来回抖动的bug

那为什么会出现这种情况呢 ?

实际上来说他到达目标点的时候无法精确到目标点,若目标点是,每次走7个,这个时候他要么就是过了目标点,要么就是没过。

永远到不了目标点。其实帮之前的缓冲有点像。

那么到底怎么算才是到达了目标点呢?

举个例子 : 你打车到某个地方,司机肯定是到哪里差不多离个米米就停下来了,就算到了。不可能要求汽车贴到那个地方停下来吧。

浅谈Javascript中匀速运动的停止条件(细说javascript)

所以说呢,其实来讲程序也是一样的,我们只要物体和目标点之间的距离近到一定的程度,就不需要再近了,就认为到了。

我们看下修改后的代码:

解释一下: 这里为什么要用 Math.abs 取绝对值呢?

理由很简单,因为速度可能是正的可能是负的。

现在我们让目标和物体之间的距离只要小于等7, 那就算到了。为什么是7呢? 因为他下一次的运动都不足7个了。这个时候我们就算他到了目标点了。

那现在问题又来了, 这样写 他并没有精确的停在目标点的位置。所以我们加了一句简单的话,直接让left 等于目标点。oDiv.style.left=iTarget+'px';

实际上最后一次走的不足7个,但是大家都知道程序这个运行的太快了,人眼是看不出来的。热烈的笑脸

这个时候就没有问题了。眨眼

这个就是匀速运动的停止条件。 那有朋友问,为什么缓冲运动没有这么麻烦呢?

因为他的速度是变的,越来越小,直到最后他甚至就到达1了,一步一步往前肯定不会出现这样的问题。

javascript操作字符串的原生方法 join([分隔符])数组元素组合为字符串toString()以字符串表示数组reverse()数组反转--改变原数组本身valueOf()返回数组值htmlheadscripttype="text/javascript"varfruits=["苹

javascript定义变量时加var与不加var的区别 一、外部的为全局,内部的为局部变量。二、加var为局部变量(在方法内),不加var为全局变量(当方法内有一次使用后)scripttype="text/javascript"vargolbe="global";

javascript中的遍历for in 以及with的用法 forin循环执行一个对象中的属性with语句:(对象操作语句)功能:为一段程序建立默认对象格式:with(对象){语句组}具体示例:scripttype="text/javascript"functionmember(

标签: 细说javascript

本文链接地址:https://www.jiuchutong.com/biancheng/384764.html 转载请保留说明!

上一篇:JS获取各种宽度、高度的简单介绍(js获取宽高)

下一篇:javascript操作字符串的原生方法(javascript中字符串)

  • 递延所得税资产和所得税费用的关系
  • 换了公司后个税还要申请申报吗
  • 跨年的所得税会计分录
  • 上个月的普票开错了怎么办
  • 主营业务收入净额在利润表里怎么看
  • 基本存款账户可以换银行吗?
  • 支付宝商户服务电话
  • 为什么差额征税有的可以开专票有的只能开普票
  • 公司车辆卖给个人怎么处理账务
  • 支付宝企业账户的钱怎么取出来
  • 批发商税率
  • 小企业工资薪酬制度
  • 票据背书转让常见的错误
  • 菜场摊位租赁合同
  • 汇总缴纳增值税的三级公司怎么汇总备案
  • 保安公司增值服务
  • 关于一般纳税人提供非学历教育服务适用简易计税
  • 个人从上市公司取得的分红个税怎么申报
  • 增值税优惠的二级明细科目
  • 暂估入账没有调增,以后年度怎么调整
  • 工会经费申报网址是什么
  • 简易征收当月已经开出的17%怎么办?
  • 政府高薪补贴
  • 存货对外销售会计分录
  • 对增值税发票开具方面有何要求?
  • 在windows7中桌面指的是全部窗口
  • 电脑eb是什么意思
  • 补提去年的所得税费用是怎么做分录?
  • php 序列化函数
  • 葡萄酒企业已纳税多少
  • 在建工程转无形资产 会计准则
  • 为公司垫付费用,怎么要回
  • 中小企业所得税优惠政策2022
  • 代收资金清算过期怎么办
  • 太原市插画工作室
  • 升级nodejs到最新版本
  • laravel日志管理系统
  • tailf命令 查看100行
  • 股票收入需要交税
  • 标书中组织结构是什么意思
  • 筹建期工会经费怎么算
  • 无效发票进项税额抵扣
  • 售后租回融资租赁帐务处理怎么做?
  • 报销货物运输费需要什么凭证
  • 合并报表抵消分录
  • 天猫的费用
  • sql 存储过程语句
  • 预交的城建税及附加税
  • 电子税务局实名核验失败
  • 固定资产更新改造被替换的旧部件残值收入
  • 预收账款属于借还是贷
  • 个人为什么不能购买永续债
  • 暂估出口收入如何计算
  • 固定资产折旧的会计凭证
  • 租赁写字楼的需求有哪些
  • 支付劳务费需要什么原始凭证
  • sql添加后返回主键
  • win10预览版和正式版区别
  • fedora workstation怎么安装
  • win7笔记本电脑怎么重装系统教程
  • Linux系统防火墙的命令
  • Retina MacBook和10.10.3支持更快的NVMe SSD接口
  • excel自动关闭如何设置
  • win10提醒功能
  • linux开启ssh服务失败
  • nodejs引入模块
  • bat批处理视频教程
  • cocos2dx 3.0 quick lua transition action
  • jquery.min.js源代码
  • python全角半角
  • jquery的gt
  • Python线程进程协程
  • android开源小项目
  • python中pyinstaller
  • 国家税务局天津市税务总局官网
  • 卷式发票如何查验真伪
  • 出口退税申报时闿
  • 深圳国税电子税务局官网
  • 海口市哪个地方最漂亮
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设