前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >怀英漫谈2-JS语法初涉

怀英漫谈2-JS语法初涉

作者头像
用户1335799
发布2018-03-12 11:05:04
7150
发布2018-03-12 11:05:04
举报

今天碰了一下JS的语法,想与你聊聊这个。这篇文章适合前端设计师,不过在文末,我也为你准备了一些感悟,有兴趣的不妨跳到最后一看。

总体来看,JS的语法和Java的比较像,三类十一符句,三大类是:操作、判断、循环。操作分为:算术、关系、逻辑、条件、逗号运算符。判断分为:if、switch语句。循环分为:while、do-while、for、for/in语句。共十一符句。

在看完三类十一符句之后,除了算数运算符的“前++”、“后++”,比较运算符的“全等===”,for/in语句,刷新了一波认知之外,其它的都可以套用Java中的那一套。

前++, 后++

所谓的“前++”,也就是值本身+1, 返回的是新值。“后++”,也是值本身+1, 但返回的是旧值。这与我之前的认知并不同。我之前认为“前++”是先加1,然后再做算数运算。“后++”是先做算数运算,然后再加1。细细体会这两种解释,其实意思都一样,不过呢,前者不光光说了值的状态(值本身),也说了运算状态(返回的是……)。而后者将这两种状态杂糅到了一起。在做具体分析时候需要将这两种状态分离开来,然后再进行判断,这样一来效率反而较第一种降低了不少。

全等===

这个符号我是第一次见,在Java的开发中并未见过。在JS中,它代表着全等,不光光要求数值相等,数据类型要完全相等。这个功能有点儿像Java中的instanceof与==的结合。

for/in

for/in我以前是知道这个名字的,不过在我的印象中,我把它与Java中的增强for循环联系到了一块,都是在for的括号里做文章,不再传统的(var i=0; i<?; i++)这样子了,而是可以将集合中的每一个元素提取出来,供每一次的循环使用。并且不需要在使用的时候再去考虑循环次数这样的东西。从这个角度来说,它对集合遍历对象的效率要高于传统for循环。

感悟

JS真的是集成了顶级语言的语法,因为几年前学C的时候,发现C的语法也基本上是三类十一符句。这应该不是巧合,而是编程领域形成的共识。三类十一符句是最经典的编程语法,它会逐渐变成这一领域的基础设施,对我来说,精通其中一门语言的三类十一符句后,再去学别的语法,速度上会很快。对新的编程语言来说,这必将是以后新出的编程语言语法的一部分。

清单

  1. JS语法与Java类似,都是三类十一符句。
  2. JS中 特有“全等===”
  3. JS中的for/in,概念上与Java中的foreach相同。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 怀英的自我修炼 微信公众号,前往查看

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

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

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