JavaScript学习(一):词法结构

2024-09-05 11:32
文章标签 java 学习 script 结构 词法

本文主要是介绍JavaScript学习(一):词法结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

近期准备学习JavaScript,因为当初只了解一些零散知识,完全形成不了知识体系,而且因为工作不断接触到这块的内容,上网接触的知识越来越冗杂,严重阻碍了学习的进展,所以打算重新学习JavaScript,体系化知识。

学习计划:JavaScript-->hquery--->CSS

JavaScript学习参考书籍:JavaScript权威指南

        

第一章学习:JavaScript的词法结构


2.1  字符集

2.1.1 区分大小写
JavaScript是区分大小写的语言,关键字、变量、函数名和所有标识符都必须采取一致的大小写形式。
但是HTML并不区分大小写,例如:HTML中点击事件 'onclick' 可以写成 'onClick ',但在JavaScript代码中,必须写成onclick;


2.1.2 空格、换行符和格式控制符
JavaScript贵忽略程序中标识之间的空格,多数情况下,JavaScript同样会忽略换行符;


2.1.3 Unicode转义序列
JavaScript定义了一种特殊序列,使用六个ASCII字符来代表任意16位Unicode内码。这些Unicode转义序列均以\u为前缀,其后跟随4个十六进制数。


2.2 注释

JavaScript支持两种注释,
//  ----单行注释
以及
/*   */    ----多行注释,内不能嵌套



2.3 直接量

直接量---程序中直接使用的数据值
例如: 数字、小数、字符串文本、布尔值、正则表达式直接量、空


2.4 标识符和保留字

标识符 -- 用来对变量和函数进行命名,或者用做JavaScript代码中某些循环语句中的跳转位置的标记。
JavaScript标识符必须以字母、下划线或者美元符号开始,后续可以是字母、数字、下划线和美元符号(数字不允许作为首字符出现,以便JavaScript可以轻易区分开标识符和数字)。
*通常我们只是用ASII字母和数字来书写标识符,但是JavaScript允许标识符中出现Unicode字符全集中的字母和数字。


保留字  ---JavaScript把一些标识符拿出来用做自己的关键字
break  case  catch continue  debugger  default
delete do  else false finally for
function if in instanceof new null
return switch this throw true try
typeof var void while with

也有一些保留关键字
class const enum export extends import super

还有一些严格模式下的保留字


2.5 可选的分号

JavaScript使用分号(;)将语句分隔开,增强代码的可读性和简洁性,缺少分隔符,一条语句的结束就成了下一条语句的开始。
有些分号可以省略
在JavaScript中,如果语句各自独占一行,通常可以省略语句之间的分号

细节注意
a = 3;
b = 4;
//---第一个分号可以忽略
a = 3; b = 4;
//---第一个分号不能忽略
JavaScript并不是在所有换行处都填补分号:只有缺少了分号就无法正确解析代码的时候,JavaScript才会填补分号。
也就是如果当前语句和随后的非空格字符不能当成一个整体来解析的话,JavaScript就会在当前语句行结束处填补分号。

一般来讲,如果当前语句和下一行语句无法合并解析,JavaScript则会在第一行后填补分号,但有两个例外
1.设计return 、break和continue语句的场景中,如果这三个关键字后紧跟换行,JavaScript则会在换行处填补分号
return
true;
会解析成
return; true;
也就是说,在return、break和continue在随后的表达式之间不能换行。

2.‘++’ ‘--’ 运算符,这两个表达式可以当做表达式的前缀和后缀,如果用做后缀表达式,他和表达式应当在同一行,否则,行尾将填补分号,同时 ‘++’ ‘--’将会作为下一行代码的前缀操作符并与之一起解析;
x
++
y
会解析为
x;
++y;





这篇关于JavaScript学习(一):词法结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1138834

相关文章

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

Spring Boot中的路径变量示例详解

《SpringBoot中的路径变量示例详解》SpringBoot中PathVariable通过@PathVariable注解实现URL参数与方法参数绑定,支持多参数接收、类型转换、可选参数、默认值及... 目录一. 基本用法与参数映射1.路径定义2.参数绑定&nhttp://www.chinasem.cnbs

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

Spring StateMachine实现状态机使用示例详解

《SpringStateMachine实现状态机使用示例详解》本文介绍SpringStateMachine实现状态机的步骤,包括依赖导入、枚举定义、状态转移规则配置、上下文管理及服务调用示例,重点解... 目录什么是状态机使用示例什么是状态机状态机是计算机科学中的​​核心建模工具​​,用于描述对象在其生命

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

Java中Integer128陷阱

《Java中Integer128陷阱》本文主要介绍了Java中Integer与int的区别及装箱拆箱机制,重点指出-128至127范围内的Integer值会复用缓存对象,导致==比较结果为true,下... 目录一、Integer和int的联系1.1 Integer和int的区别1.2 Integer和in

SpringSecurity整合redission序列化问题小结(最新整理)

《SpringSecurity整合redission序列化问题小结(最新整理)》文章详解SpringSecurity整合Redisson时的序列化问题,指出需排除官方Jackson依赖,通过自定义反序... 目录1. 前言2. Redission配置2.1 RedissonProperties2.2 Red

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.