JavaScript语言精粹(一)--语法

简介: JavaScript语言精粹(一)--语法


说明

《JavaScript语言精粹》学习笔记。


1.1、空白

空白可能表现为格式化字符或注释形式。(空白通常没有意义)


1、用于分隔字符序列

// var that 之前空格不能移除
var that = this;


2、避免使用/* */注释代码

比如:

/*
    var rm_a = /a*/.match(s)
*/




1.2、标识符


标识符由一个字母开头,其后可选择性的加上一个或多个字母、数字或下划线。

标识符被用于语句、变量、参数、属性名、运算符和标记。


标识符不能使用下面这些保留字:

abstract
boolean break byte
case catch char class const continue
debugger default delete do double
else enum export extends
false final finally float for function
goto
if implements import in instanceof int interface
long
native new null
package private protected public
return
short static super switch synchronized
this throw throws transient true try typeof
while with

JavaScript不允许使用保留字来命名变量或参数。

JavaScript不允许在对象字面量中,或者在一个属性存取表达式的点号之后,使用保留字作为对象的属性名。



1.3、数字

   JavaScript只有一个单一的数字类型。它在内部表示为64位的浮点数,和 java 的 double 一样。

值 Infinity 表示所有大于1.79769313486231570e+308 的值



1.4、字符串

字符串字面量可以被包围在单引号或双引号中,它可能包含0个或多个字符。


1、JavaScript在被创建的时候,Unicode是一个16位字符集,所以JavaScript中的所有字符都是16位的。


2、转义字符允许把那些正常情况下不被允许的字符插入到字符集中。(比如\(反斜杠符号)是转义字符。)


\u约定允许指定用数字表示的字符码位。

"A" === "\u0041"



1.5、语句

一个编译单元包含一组可执行的语句。在web浏览器中,每个<script>标签都提供一个被编译且立即执行的编译单元。


1、语句往往按照从上到下的顺序被执行。


JavaScript可以通过下面的方式去改变执行序列:


  • 条件语句(if和switch)
  • 循环语句(while、for和do)
  • 强制跳转语句(break、return和throw)
  • 函数调用


2、代码块是包在一对花括号中的一组语句。




1.6、表达式


最简单的表达式是字面量值(比如字符串或数字)、变量、内置的值(true、false、null、undefined、NaN和Infinity)、以new前导的调用表达式、以delete前导的属性存取表达式、包在圆括号中的表达式、以一个前缀运算符作为前导的表达式,或者表达式后面跟着:


  • 一个插入运算符与另一个表达式;
  • 三元运算符 ? 后面跟着另一个表达式,然后接一个 :,再然后接第三个表达式;
  • 一个函数调用
  • 一个属性存取表达式


运算符优先级:


运算符 说明
. [] () 属性存取及函数调用
delete new typeof + - ! 一元运算符
* / % 乘法 除法 取模
+ - 加法/连接 减法
>= <= > < 不等式运算符
=== !== 等式运算符
&& 逻辑与
|| 逻辑或
? : 三元



1.7、字面量

对象字面量是一种方便指定新对象的表示法。属性名可以是标识符或字符串。


1.8、函数

函数字面量定义了函数值。它可以有一个可选的名字,用于递归地调用自己。它可以指定一个参数列表,这些参数将作为变量由调用时传递的实际参数初始化。

函数的主体包括变量定义和语句。




目录
相关文章
|
6月前
|
存储 JavaScript 前端开发
Node.js的基本语法
【8月更文挑战第12天】Node.js的基本语法
227 1
|
3月前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
74 4
|
4月前
|
JavaScript 前端开发
JavaScript 函数语法
JavaScript 函数是使用 `function` 关键词定义的代码块,可在调用时执行特定任务。函数可以无参或带参,参数用于传递值并在函数内部使用。函数调用可在事件触发时进行,如用户点击按钮。JavaScript 对大小写敏感,函数名和关键词必须严格匹配。示例中展示了如何通过不同参数调用函数以生成不同的输出。
|
4月前
|
XML 监控 JavaScript
JavaScript 语言对企业上网监控的技术支持
在数字化企业环境中,上网监控对企业信息安全和提升员工效率至关重要。JavaScript 作为广泛应用的脚本语言,提供了强大的技术支持,包括数据获取与分析、与服务器端交互、监控页面加载时间和网络活动,助力企业有效管理上网行为,保障信息安全。
47 6
|
4月前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
90 0
|
6月前
|
JavaScript 前端开发
JavaScript基础&实战(1)js的基本语法、标识符、数据类型
这篇文章是JavaScript基础与实战教程的第一部分,涵盖了JavaScript的基本语法、标识符、数据类型以及如何进行强制类型转换,通过代码示例介绍了JS的输出语句、编写位置和数据类型转换方法。
JavaScript基础&实战(1)js的基本语法、标识符、数据类型
|
6月前
|
Web App开发 JavaScript 前端开发
Node.js与Go语言的对比?
【8月更文挑战第4天】Node.js与Go语言的对比?
499 3
|
6月前
|
自然语言处理 JavaScript 前端开发
【走向世界】Vue.js国际化:打造无国界应用,让爱与信息跨越语言的边界!
【8月更文挑战第30天】本文详细介绍了Vue.js中实现国际化的多种方法及最佳实践。通过使用`vue-i18n`等第三方库,开发者能够轻松地为应用添加多语言支持,优化用户体验并扩大市场覆盖范围。文章涵盖从基本配置、动态加载语言包到考虑文化差异等方面的内容,帮助读者构建真正全球化且无缝多语言体验的应用程序。
173 0
|
6月前
|
JavaScript 前端开发 UED
探索JavaScript的历史:网络需求初现、语言创立与标准化的旅程
探索JavaScript的历史:网络需求初现、语言创立与标准化的旅程
|
7月前
|
缓存 JavaScript 前端开发
前端框架与库 - Vue.js基础:模板语法、数据绑定
【7月更文挑战第14天】Vue.js 是渐进式框架,以简洁API和高效数据绑定知名。本文聚焦模板语法与数据绑定,解释常见问题和易错点,助力初学者避坑。模板语法中,{{ expression }} 用于渲染值,v-bind/: 用于动态绑定属性。数据绑定涉及文本、属性和事件,注意v-model适用于表单元素,计算属性有缓存。理解正确用法,借助文档和IDE,可提升开发质量和效率。善用Vue.js,打造响应式UI。
268 4

热门文章

最新文章