2021-03-23 词法结构

JavaScript的词法结构,涵盖如下内容:

  1. 区分大小写、空格和换行符;
    区分大小写: 这意味着它的关键字、变量、函数名和其他标识符必须始终保持一致的大小写形式。类似地, online、 Online 、 OnLine 和 ONLINE 是4个完全不同的变量名。

  2. 注释;

  // 这是单行注释
  
  /* 这也是注释 */
  
  /*
    *  这是多行注释
    *  每行开头额外的*字符不是必需得, 只是为了美观
    */

  1. 字面量;

一种直接出现在程序中的数据值。 下面这些都是字面量:

12       // 数值12
1.2     //  数值1.2
'hello world'      //  字符串
'he'      //  字符串
true      //  布尔值
false      //  布尔值
null      //  无对象
  1. 标识符和保留字;
    标识符就是一个名字。以下都是合法的标识符:
i、my_variable_name、v13、_dummy、$str

保留字就是Javascript 为语言自身使用而保留了某些标识符。并且不能作为常规标识符使用。
下面介绍保留字

as const export get null target void 
async continue extends if of this while
await debugger false import return throw with
break default finally in set true yield
case delete for instanceof static try
catch do from let super typeof
class else function new switch var

// JavaScript也保留或限制对某些关键字对使用,这些关键字当前并未被语言所用,但将来某个版本可能会用到。

// 由于历史原因, 某些情况下也不允许使用 arguments 和 eval 作为标识符, 因此最好不要使用。 

  1. Unicode;
    JavaScript 程序是使用Unicode字符集编写的, 因此在字符串和注释中可以使用任意Unicode字符。
    常量或变量的名字中可以包含数字符号或非英语文字:
const n = 3.14;
const si = true;

转义序列:

let café = 1; // 使用Unicode字符定义一个变量
caf\u00e9 ; // => 1; 使用转义序列访问这个变量
caf\u{E9}; // => 1; 相同转义序列的另一种形式

console.log(\u{1F600}) // 打印一个笑脸符号

// 转义序列也可以出现在注释中,但是因为注释会被忽略,所以注释中的转移序列会被作为ASCII字符处理不会被解释为Unicode。
  1. 可选的分号;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容