数组的解构赋值
基本用法
ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。
以前,为变量赋值,只能直接指定值。
var a = 1;
var b = 2;
var c = 3;
E...
AI君
2年前 (2020-03-24) 53℃
0喜欢
let命令
基本用法
ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。
{
let a = 10;
var b = 1;
}
a // ReferenceError...
AI君
2年前 (2020-03-24) 54℃
0喜欢
ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。
标准的制定者有计划,以后每年...
AI君
2年前 (2020-03-24) 57℃
0喜欢
《ECMAScript 6入门》是一本开源的JavaScript语言教程,全面介绍ECMAScript 6新引入的语法特性。
本书覆盖 ES6/ES7 与 ES5 的所有不同之处,对涉及的语法知识给予详细介绍,并给出大量简洁易懂的示例代码...
AI君
2年前 (2020-03-24) 54℃
0喜欢
继承机制的实现
要用 ECMAScript 实现继承机制,您可以从要继承的基类入手。所有开发者定义的类都可作为基类。出于安全原因,本地类和宿主类不能作为基类,这样可以防止公用访问编译过的浏览器级的代码,因为这些代码可以被用于恶意攻击。
选...
AI君
2年前 (2020-03-24) 53℃
0喜欢
本节使用一个经典的例子解释 ECMAScript 的继承机制。
继承机制实例
说明继承机制最简单的方式是,利用一个经典的例子 – 几何形状。实际上,几何形状只有两种,即椭圆形(是圆形的)和多边形(具有一定数量的边)。圆是椭...
AI君
2年前 (2020-03-24) 56℃
0喜欢
通过使用 ECMAScript,不仅可以创建对象,还可以修改已有对象的行为。
prototype 属性不仅可以定义构造函数的属性和方法,还可以为本地对象添加属性和方法。
创建新方法
通过已有的方法创建新方法
可以用 prototype...
AI君
2年前 (2020-03-24) 53℃
0喜欢
使用预定义对象只是面向对象语言的能力的一部分,它真正强大之处在于能够创建自己专用的类和对象。
ECMAScript 拥有很多创建对象或类的方法。
工厂方式
原始的方式
因为对象的属性可以在对象创建后动态定义,所有许多开发者都在 Jav...
AI君
2年前 (2020-03-24) 53℃
0喜欢
作用域指的是变量的适用范围。
公用、私有和受保护作用域
概念
在传统的面向对象程序设计中,主要关注于公用和私有作用域。公用作用域中的对象属性可以从对象外部访问,即开发者创建对象的实例后,就可使用它的公用属性。而私有作用域中的属性只能在...
AI君
2年前 (2020-03-24) 54℃
0喜欢
在 ECMAScript 中,所有对象并非同等创建的。
一般来说,可以创建并使用的对象有三种:本地对象、内置对象和宿主对象。
本地对象
ECMA-262 把本地对象(native object)定义为“独立于宿主环境的 ECMAScr...
AI君
2年前 (2020-03-23) 59℃
0喜欢
对象的创建和销毁都在 JavaScript 执行过程中发生,理解这种范式的含义对理解整个语言至关重要。
声明和实例化
对象的创建方式是用关键字 new 后面跟上实例化的类的名字:
var oObject = new Object();...
AI君
2年前 (2020-03-23) 56℃
0喜欢
面向对象术语
对象
ECMA-262 把对象(object)定义为“属性的无序集合,每个属性存放一个原始值、对象或函数”。严格来说,这意味着对象是无特定顺序的值的数组。
尽管 ECMAScript 如此定义对象,但它更通用的定义是基于代码...
AI君
2年前 (2020-03-23) 56℃
0喜欢
在ECMAScript中 最容易让人误解的一点是——它支持闭包(closure)。
闭包,指的是词法表示包括不被计算的变量的函数,也就是说,函数可以使用函数之外定义的变量。
简单的闭包实例
在 ECMAScript 中使用全局变量是一...
AI君
2年前 (2020-03-23) 56℃
0喜欢
ECMAScript 的函数实际上是功能完整的对象。
Function 对象(类)
ECMAScript 最令人感兴趣的可能莫过于函数实际上是功能完整的对象。
Function 类可以表示开发者定义的任何函数。
用 Function ...
AI君
2年前 (2020-03-23) 55℃
0喜欢
arguments 对象
在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们。
例如,在函数 sayHi() 中,第一个参数是 message。用 arguments[0] 也可以访问这个值,即第一个参...
AI君
2年前 (2020-03-23) 54℃
0喜欢
什么是函数?
函数是一组可以随时随地运行的语句。
函数是 ECMAScript 的核心。
函数是由这样的方式进行声明的:关键字 function、函数名、一组参数,以及置于括号中的待执行代码。
函数的基本语法是这样的:
function ...
AI君
2年前 (2020-03-23) 57℃
0喜欢
switch 语句
switch 语句是 if 语句的兄弟语句。
开发者可以用 switch 语句为表达式提供一系列的情况(case)。
switch 语句的语法:
switch (expression)
case value: st...
AI君
2年前 (2020-03-23) 54℃
0喜欢
有标签的语句
with 语句用于设置代码在特定对象中的作用域。
它的语法:
with (expression) statement
例如:
var sMessage = "hello";
with(sMessage) {
alert(...
AI君
2年前 (2020-03-23) 58℃
0喜欢
break 和 continue 语句对循环中的代码执行提供了更严格的控制。
break 和 continue 语句的不同之处
break 语句可以立即退出循环,阻止再次反复执行任何代码。
而 continue 语句只是退出当前循环,...
AI君
2年前 (2020-03-23) 58℃
0喜欢
有标签的语句
可以用下列语句给语句加标签,以便以后调用:
label : statement
例如:
start : i = 5;
在这个例子中,标签 start 可以被之后的 break 或 continue 语句引用。
提示:在下面的...
AI君
2年前 (2020-03-23) 58℃
0喜欢