一起来写个简单的解释器:加减乘除表达式_第1页
一起来写个简单的解释器:加减乘除表达式_第2页
一起来写个简单的解释器:加减乘除表达式_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一起来写个简单的解释器(5):加减乘除表达式弹出层效果倒计时效果用 JS 实现放大镜特效用 JS 实现购物车特效本文由 伯乐在线 - SamLin 翻译,黄利民 校稿。未经许可,禁止转载!英文出处: Ruslan Spivak。欢迎加入翻译组。本系列:一起来写个简单的解释器(1)一起来写个简单的解释器(2)一起来写个简单的解释器(3)一起来写个简单的解释器(4)如何创建一个解释器或编译器这么复杂的问题,你会如何处理呢?开始的时候它很像是一团乱糟糟的毛线,你得重新梳理展开,然后缠成一个完美的毛线球。达到上述目的的方法只需一次解开一根线、一个结。虽然有时候你可能会觉得你无法马上理解某些事情,但是你

2、必须坚持下去。我保证如果你足够坚持,最后你会“豁然开朗”(哎呀呀,如果每次我不能马上弄懂某些事情的时候,我都存25美分,那么我早就变成富豪了:))。关于理解如何创建一个解释器和编译器,也许我能给你的最好建议之一就说阅读本系列文章的解释、代码,然后自己去编写代码,甚至在一段时间内多次编写同样的代码,使得这些材料和代码对于你来说是很自然的。直到那时才继续学习新的主题。不要着急,请慢下来,花时间去深刻地理解基础概念。虽然这种方法看起来有点慢,但是你会受益匪浅。相信我。你在最后终究会得到完美的毛线球。你知道吗?即使它不够完美,但是总比什么都不做和不学习这些课题,或者走马观花然后几天之后就忘记了要好。记

3、住只需要坚持不懈地解开缠绕: 一次一根线、 一个结,并且通过编写大量代码来实践你所学过的:今天你将会用到在本系列前面几篇文章中学到的所有知识,并且学习如何解析和解释带有任意数量的加法、减法、乘法和除法运算符的算术表达式。你将会编写一个可以计算像“14+ 2 * 3 6 / 2 ”这样的表达式的解释器。在深入研究和编写代码之前,让我们讨论一下运算符的结合律和优先级。按照约定, 7+3+1等同(7+3)+1 ,731 等同(7 3) 1 。这里没有什么可惊讶的。我们在某个时候学过那些约定,并且从那以后把那些约定当作是理所当然的。如果我们把7 3 1 当作是7 (3 1) ,那么结果会是5 而不是预期的3。在普通的算术运算和大部分编程语言中,加法、减法、乘法和除法都是左结合:Shell12347 + 3 + 1 is equivalent to (7 + 3) + 17 - 3 - 1 is equivalent to (7 - 3) - 18 * 4 * 2 is equivale

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论