位置: 编程技术 - 正文

浅谈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中字符串)

  • 增值税专用发票的税率是多少啊
  • 纳税人未抄报税是什么意思
  • 购买理财产品计入交易性金融资产
  • 税金及附加现金流指定
  • 向投资者支付的股息红利等权益性投资收益款项
  • 发票进项税额抵扣的最晚时间
  • 用银行存款缴纳各种税费所引起的变动为
  • 企业购进材料的会计分录
  • 返聘人员工伤可以申请工伤鉴定吗
  • 生产型增值税与消费型增值税的区别在于是否允许企业
  • 发票对方作废了,客户还可以认证么
  • 2018增值税暂行条例
  • 发票抵扣联什么时候用
  • 残疾人就业保障金
  • 企业装修期间开工怎么办
  • 不能抵扣的进项发票怎么做分录
  • 建安企业核定征收改查账征收后怎么处理账目
  • 全额抵扣的发票怎么申报增值税
  • 结转采购材料的实际成本会计分录怎么写
  • 收货款时少收几十元,分录怎么做
  • 设置bios 密码
  • 存货短缺的账务处理
  • 提取的盈余公积是所有者权益吗
  • 最小巧的单反相机
  • 报销没有发票如何处理做凭证
  • 小规模纳税人销售自己使用过固定资产
  • 在anaconda下安装python
  • 全球矿业巨头力拓集团
  • laravel技巧
  • 一般纳税人未取得增值税专用发票怎么处理
  • 差额征税七种业务是什么
  • 如何根据科目余额表编制财务报表
  • 微软官方wintogo
  • 累计折旧大白话
  • 营业外支出会计科目
  • 所得税汇算清缴需要调增的项目
  • 帝国cms相关文章调用
  • 买一赠一税务局答复
  • 上传附报资料是哪些资料
  • 研发类公司能不能生产
  • 税务登记程序有哪些
  • 应付股利是否影响未分配利润
  • 工会经费计入什么项目流量表
  • 租金收入会计科目
  • 建筑行业收到的工程转给项目经理成本票从哪来
  • 不动产计税金额
  • 成本类科目在哪里列式
  • 季度盈利弥补以前年度亏损的账务处理
  • 商业承兑汇票提示付款流程
  • 资产负债表里包括哪两个数据
  • 土地使用权使用年限怎么算
  • 按揭贷款汽车会被抵押吗
  • sql中分页
  • xp系统如何打印文件
  • vista电脑密码忘了怎么解除
  • win10提示测试模式
  • linux calloc
  • linux中使用最多的命令
  • win7用户在哪
  • win10打开文件夹弹出新窗口
  • centos7自签名证书
  • centos8 redhat
  • Win7系统如何清理本地硬盘
  • windows8安装密钥永久
  • window10玩dnf怎么设置流畅
  • win10系统应用更新
  • linux内核命名
  • javascript的用法
  • jquery fadein 源码
  • shell中的-le
  • incaseformat查杀
  • vue导航组件
  • window.open()参数传递及获取
  • rpg游戏脚本已经被备份
  • jquery设置宽高
  • 重庆市国家税务局电话
  • 增值税税控开票软件密码不知道了怎么办
  • 北京市社会团体
  • 在京东上买货
  • 房产折旧怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设