初识JavaScript(一)
最近由于工作的需要的原因,我从一个写后台的现在让我转到写前端,再加上我的js部分特别的差,所以我现在开始学习js部分的知识。
我的第一篇博文就这样开始写了。俗话说,千里之行,始于足下。九层高台,始于垒土。我要努力跟上博客园的各位大神的脚步。
1.初识JavaScript的词法结构
在编程语言中词法机构是一套基础性规则,用来描述如何使用这门语言编写程序。在本小节中,咱们要认识到JavaScript的字符集、怎样区分大小写、空格、换行符和格式控制符、Unicode转义序列、标准化、注释等等词性结构。
1.1 字符集
JavaScript的程序使用Unicode字符集编写的,那什么是Unicode呢?Unicode是ASCII和Latin-1的超集,它支持地球上几乎所有在用的语言。
1.2 区分大小写
JavaScript是区分大小写的语言。也就是说,关键字、变量、函数名、和所有标识符(identifier)都必须采取一致的大小写的形式。
举个栗子:关键字"while"必须写成"while"而不能写成"While"或者"WHILE"。同样"online"、"Online"、"OnLine"、"ONLINE"是4个不同的变量名
注意:1.HTML并不区分大小写;
2.XHTML区分大小写
举个栗子:在HTML标签中,这些标签的属性名可以使用大写也可以使用小写,但是由于HTML的标签和属性名与JavaScript中的标签和属性名同名,这个时候JavaScript中则必须小写。比如在HTML中设置时间处理程序onclick属性可以写成onClick,但是在JavaScript(XHTML文档)代码中,必须使用小写的onclick。
1.3 空格、换行符和格式控制符
JavaScript会忽略程序中标识之间的空格。多数情况下,JavaScript同样会忽略换行符。由于可以在代码中随意使用空格和换行,因此采用整齐、一致的缩进来形成统一的编码风格,从而提高代码的可读性和整齐性。
中文名称 | 符号 |
空格符 | \u0020 |
水平制表符 | \u0009 |
垂直制表符 | \u000B |
换页符 | \u000C |
字节序标记 | \uFEFF |
换行符 | \u000A |
回车符 | \u000D |
行分隔符 | \u2028 |
段分隔符 | \u2029 |
不中断空白符 | \u00A0 |
从右至左书写标记 | \u200F |
从左至右书写标记 | \u200E |
零宽连接符 | \u200D |
零宽非连接符 | \uFEFF |
... | ... |
1.4 Unicode转义序列
使用6个ASCII字符来代替任意16位Unicode内码,这种序列就叫做Unicode转义序列。
举个栗子: "café" === "caf\u00e9" //结果是:true
1.5 标准化
Unicode标准为所有字符定义了一个首选的编码格式,并给出了一个标准化的处理方式将文本转换为一种合适比较的标准格式,JavaScript会认为它正在解析的程序化代码已经是这种标准格式,不会再对其标识符、字符串、或正则表达式做标准化处理。
1.6 注释
//:单行注释
/**/:多汗注释
1.7 直接量
所谓的直接量就是程序中直接使用的数据值。
举个栗子:
直接量 | 注释 |
12 | 数字 |
1.2 | 小数 |
"hello world" | 字符串文本 |
'Hi' | 另一个字符串 |
true | 布尔值 |
false | 另一个布尔值 |
/javascript/gi | 正则表达式直接量(用作模式匹配) |
null | 空 |
{x:1,y:2} | 对象 |
[1,2,3,4] | 数组 |
1.8 标识符
标识符就是一个名字。在JavaScript中,用来对变量和函数命名,或者用做JavaScript代码中某些循环语句中的跳转位置的标记。
标识符命名规则:
1.必须以字符、下划线(_)、美元($)为首字母,后续的字符可以是字母、数字、下划线或美元符;
2.数字是不被允许作为首字符出现,以便JavaScript可以轻易的分开标识符和数字;
3.出于可移植性和易于书写性的考虑,通常我们只使用ASCII字母和数字来书写标识符;
4.JavaScript允许标识符中出现Unicode字符全集中的字母和数字。
合法的标识符:i、my_variable_name、v13、_dummy、$str等等
1.9 关键字(保留字)
JavaScript主要的关键字:break、do、instanceof、typeof、case、else、new、var、catch、finally、return、void、continue、for、switch、while、debugger*、function、this、with、default、if、throw、delete、in、try
2.0 可选的分号
JavaScript使用分号(;)将语句分开。这对增强代码的可读性和整洁性是非常重要的;缺少分隔符,一条语句结束就成了下一条语句的开始,反之亦然。
注意:1.JavaScript并不是在所有换行处都填补分号;只有在缺少了分号就无法正确解析代码的时候,JavaScript才会补填分号;
2.在return、continue和break和随后的表达式之间不能有换行。如果添加换行,程序则只有在极特殊的情况下才会报错,而且调试起来非常麻烦。
3.在涉及"++"和"--"运算符的时候。这些运算符可以作为表达式的前缀,也可以当做表达式的后缀。如果将其用做后缀表达式,它和表达式应当在同一行。否则,行尾将填补分号,同时"++"或"--"将会作为下一行代码的前缀操作符并与之一起解析。
2.小结
我是通过此次学习,才知道在js在词法有那么多规则,而且每种规则都是我在进行编写JavaScript程序的要求。
这是我第一次发这样的博文,有什么不对的地方请及时在下面留言,并帮助我进行更正。谢谢了!!!
来源:oschina
链接:https://my.oschina.net/u/4402535/blog/4191422