今天是第二章。所谓词法结构(lexical structure),就是写代码中最基本的东西,变量命名,注释,语句分隔等,这是抄书抄的。。。

1.字符集,必须是Unicode,反正Unicode是ASCII的超集,各种语言妥妥支持,克林贡语=。=?当我没说

2.JavaScript是区分大小写的。

  这一点给我留下了深刻印象。去年五月份,第一次写JavaScript,document.getElementById()写成了document.getElementByID(),妈蛋整整一个上午硬是get不到,一个上午啊!所以说编程无小事,大小细节和基本原理都是要好好掌握的。HTML的标签是不区分大小写的,但是考虑到HTML一般都是和JS配合使用,还是统一区分大小写比较好。目前学过的语言中,我只记得汇编是不区分大小写的。多说一句,大三的时候,计算机组成课写CPU的时候,一段汇编写完,敲回车和不敲回车是两个完全不同的结果。

3.空格、缩进、换行、格式控制符deng 可以被JavaScript识别。

  这个跟我2中多说的那一句讲的是同一个事情。另外,JS支持Unicode转义写法。要注意的是,空格符是\u0020,水平制表符是\u0009,虽然有时候可以产生类似的效果但是它们本质上是不一样的;同样的还有换行符\u000A和回车符\u000D。

4.杂项。

  因为这部分比较碎,写成杂项,其中包括注释、标识符、关键字、分号的解析。

  注释这个JavaScript并不例外,用的是//以及/**/对应单行和多行注释。

  标识符就是名字啦,字母下划线和美元符可以开头,数字严禁作为开头。关键字不能作为标识符这个是常识吧,只是JavaScript有普通和严格模式之分,反正我是不会故意用保留字(reserved word)作为标识符。

  分号可以有可以没有,在当前语句和下一行语句无法合并解析的情况下,JS会在第一行后自己补分号再解析。可有可无的情况都让它有好了,不定的东西最麻烦了,自己写的话一句话结束统一要带分号。(可以不带任何东西直接return,分号都可以不要)

5.总结

  第二章都是很基础很常识的东西,我还是简单的记录一下。慢慢会接触到JS的核心内容的,不要急。

2.词法结构-JavaScript权威指南笔记的更多相关文章

  1. 4.词法结构-JavaScript权威指南笔记

    今天是第二章.所谓词法结构(lexical structure),就是写代码中最基本的东西,变量命名,注释,语句分隔等,这是抄书抄的... 1.字符集,必须是Unicode,反正Unicode是ASC ...

  2. javascript权威指南笔记

    最近每天工作之余看下js的细节部分,时间不是很多,所以看的进度也不会太快,写个博客监督自己每天都看下. 以前不知道的细节或者以前知道但是没注意过的地方都会记录下来,所以适合有一定基础的,不适合零基础新 ...

  3. javascript权威指南笔记--javascript语言核心(四)

    对象: 通过引用(而非值)来操作对象: var obj = {"x":1,"y":2}; var copyObj = obj; copyObj.x = 5; c ...

  4. javascript权威指南笔记--javascript语言核心(三)

    1.var用来声明一个或多个变量.全局变量是全局对象的属性,它无法通过delete删除. 如果var语句中的变量没有指定初始化表达式,那么这个变量的初始值为undefined. 变量声明语句会被提前到 ...

  5. javascript权威指南笔记--javascript语言核心(二)

    1.函数作用域:在函数内声明的所有变量在函数体内始终是可见的.这意味着在变量声明之前甚至已经可用. *“声明提前”:javascript函数里声明的所有变量(但不涉及赋值)都被提前至函数的顶部. fu ...

  6. javascript权威指南笔记--javascript语言核心(一)

    1.javascript的数据类型分为两类:原始类型和对象类型. 原始类型包括字符串.数字.布尔值.null.undefined. 对象是属性的集合,每个对象都由“名/值”对构成.数组和函数是特殊的对 ...

  7. 3.类型、值和变量-JavaScript权威指南笔记

    开始变得有意思起来了,然而第三章还是以基础知识了解的角度阐释相关的概念,并没有深入到结合代码以及要实现的功能讲用法和原理的程度. 1.概论. value:程序的运行是对值的操作. type:能够表示并 ...

  8. 1.语言概述-JavaScript权威指南笔记

    上周三的时候交给老板目前的项目第一个迭代回顾会的总结.原本是以综述性的表述方式写的,交给他之后表示程序员不要长篇大论.总结要分为优点缺点期望等等块,每块列出条目,简明扼要的表达出来.这里也用这种风格. ...

  9. [JavaScript权威指南 [笔记]

    对象的比较均是引用的比较.(不可变的原始值和可变的对象引用)this返回调用这个方法的对象通过x!==x来判断x是否为NaNvar max = max_width || preferences.max ...

随机推荐

  1. ODI利用goldengate实现增量数据捕获

    ODI利用goldengate实现增量数据捕获 上个月,Oracle发布了ODI的最新版本10.1.3.6_02,其中增加了针对采用goldengate获取源数据库增量变化的知识模块,这样当系统需要实 ...

  2. Oracle EBS-SQL (SYS-24):职责列表

    select B.application_name, TL.responsibility_name from fnd_responsibility_tl tl, fnd_responsibility ...

  3. 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转

    (一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...

  4. COCOS2d-x简易安装步骤

    准备工作:1.    下载 cocos2d-x  下载地址:http://cdn.cocos2d-x.org/cocos2d-x-2.2.zip2.    下载 python 2.7.3 下载地址:h ...

  5. storage theory

    preface/prehight:topic: Storage(share fileSystem(可共享文件系统,Access I/O existence bottleNeck,access read ...

  6. #include <functional>

    1 bind(引用内部函数, 实体对象的地址, 占位符); 2 bind1st 3 function 1 auto 变量名 = bind(引用内部函数, 实体对象的地址, 占位符); #include ...

  7. Redis的持久化选项

    Redis提供了两种不同的持久化方法来将数据存储到硬盘里面.一种方法叫快照(snapshotting),它可以将存在于某一时刻的所有数据都写入硬盘里面.另一种方法叫只追加文件(append-only ...

  8. iPhone 禁止 Safari 页面上下拖动反弹

    解决方法:  <body ontouchmove="event.preventDefault()"  >     手机端设置:  <meta content=&q ...

  9. 最终有SpringMvc与Struts2的对照啦

    眼下企业中使用SpringMvc的比例已经远远超过Struts2,那么两者究竟有什么差别,是非常多刚開始学习的人比較关注的问题,以下我们就来对SpringMvc和Struts2进行各方面的比較: 1. ...

  10. 从零开始学习UNITY3D(GUI篇 2)

    复合控件极其使用,toolbar,selectgrid 先看效果图: toolbar可以看作是一个button按钮的集合,一次只能点击一个按钮, selectgrid又可以堪称是一个toolbar的集 ...