JavaScript语言外文翻译资料

 2022-04-14 21:06:10

英语原文共 60 页,剩余内容已隐藏,支付完成后下载完整资料


第一部分

JavaScript语言

在这里你可以学习从头开始学习JavaScript并继续到如OOP等高级概念。

我们把注意力集中在这里的语言本身,以及最少的特定于环境的笔记。

介绍

  • JavaScript简介
  • 代码编辑器
  • 开发人员控制台

JavaScript基础

  • 你好,世界!
  • 代码结构
  • 现代模式:”use strict”
  • 变量
  • 数据类型
  • 类型转换
  • 操作符
  • 比较
  • 交互:alert(警告)、prompt(提示)、confirm(确认)
  • 条件操作符:if,”?”
  • 逻辑操作符
  • 循环:while和for
  • switch语句
  • 函数
  • 函数表达式和箭头函数
  • JavaScript特辑

代码质量

  • 在Chrome中调试
  • 代码风格
  • 注释
  • 高级技巧
  • 使用mocha进行自动测试
  • Polyfills

对象:基础

  • 对象
  • 垃圾回收
  • 符号类型
  • 对象方法,this
  • 对象转化为原始类型
  • 构造器,new 操作符

数据类型

  • 原始类型的方法
  • Numbers(数字类型)
  • Strings(字符串类型)
  • Arrays(数组类型)
  • 数组类型的方法
  • 枚举类型
  • Map(图类型)、Set(集合类型)、WeakMap(弱引用图类型)、WeakSet(弱引用表类型)
  • 对象的键、值和条目
  • 解构赋值
  • 日期和时间
  • JSON方法,toJSON

进阶:使用函数

  • 递归和堆栈
  • Rest参数和分割运算符
  • 闭包
  • 旧的“var”
  • 全局对象
  • 函数对象,NFE(Named Function Expression,命名函数表达式)
  • “new Fuction”语法
  • 调度:setTimeout和setInterval
  • 修饰符和转发,call/apply函数
  • 函数绑定
  • 局部套用和partials
  • 重访箭头函数

对象,类,继承

  • 标志和描述属性
  • getter和setter属性
  • 原型继承
  • 函数的prototype(原型)属性
  • 本地原型
  • 原型的方法
  • 类模式
  • 类继承,super关键字
  • 类检查:instanceof
  • 混合

错误处理

  • 错误处理:“try...catch”
  • 自定义错误,拓展Error

第二部分

浏览器:文档,事件,界面

接下来将会学习到如何管理浏览器页面:增加元素、操作它们的尺寸和位置,动态创建界面并且和访问者交互。

文档

  • 浏览器环境,规范
  • DOM树
  • 漫游在DOM中
  • 搜索:getElement*和querySelector*
  • 结点属性:类型,标签和内容
  • Attributes属性和properties属性
  • 修改文档
  • 样式和类别
  • 元素大小和滚动
  • 窗口大小和滚动
  • 坐标

事件介绍

  • 浏览器事件介绍
  • 冒泡和捕获
  • 事件委托
  • 浏览器默认行动
  • 调度定制事件

事件详情

  • 鼠标事件基础
  • 移动:鼠标移动/移出、鼠标进入/离开
  • 拖动鼠标事件
  • 键盘:键按下和键弹开
  • 滚动
  • 页面生命周期:DOM内容加载完成,加载,卸载前,卸载
  • 资源加载:加载完成和加载失败

表单,控制

  • 表单属性和方法
  • 焦点事件:获取焦点/失去焦点
  • 事件:改变,输入,剪切,复制,粘贴
  • 表单提交:事件和方法提交

第三部分

额外的文章

本教程的前两部分没有涵盖的额外主题列表。这里没有清晰的层次结构,您可以按照您想要的顺序访问文章。

动画

贝塞尔曲线

CSS动画

JavaScript动画

框架和窗体

弹出窗口和窗口方法

跨窗口通信

点击劫持攻击

正则表达式

模式和标志

RegExp和String方法

字符类

转义,特殊字符

集合和ranges[hellip;]

Unicode标识

量词 、*、?和{n}

贪心和懒惰量词

捕获组

反向引用:\ n和$ n

交替(OR)|

字符串开始^并完成$

多行模式,标志“m”

前瞻(正在进行)

无限回溯问题

承诺,异步/等待

介绍:回调

Promise链接

Promise API

异步/等待

1. JavaScript介绍

让我们来看看JavaScript有什么特别之处,我们可以用它来实现什么,以及其他技术与它有什么关系。

1.1 JavaScript是什么?

JavaScript创建的最初目的是“使网页动起来”

这种语言中的程序叫做脚本。它们可以被写入到HTML中,并在页面加载时自动执行。

脚本是作为纯文本提供和执行的。他们不需要特别的准备或编译来运行。

在这方面,JavaScript与另一种称为Java的语言非常不同。

1.1.1 为什么是JavaScript?

在JavaScript被创造出来的时候,它最初有另一个名字:“LiveScript”。但是在当时Java语言实在是太流行了,所以将一门新的语言定位为Java的“弟弟”应该会有帮助。

但是随着它的发展,JavaScript变成了一个完全独立的语言,有它独属的规范:ECMAScript,现在它和Java没有任何关系了。

目前JavaScript不仅可以运行在浏览器中,也可以在服务端,或者在装有一个叫做JavaScript引擎的特殊程序的任意设备上。

浏览器中有一个嵌入式引擎,有时它也被叫做JavaScript虚拟机。

不同的引擎有着不同的“代号”,例如:

  • V8-在Chrome和Opera(欧朋)浏览器
  • SpiderMonkey-在Firefox(火狐)浏览器
  • hellip;hellip;这里有其他的代码名如“Trident”、“Chakra”对于不同版本的IE,“ChakraCore”对于微软的Edge,“Nitro”和“SquirrelFish”对于Safari等等。

以上的术语是比较容易记忆的,因为它们被用在网络上的开发者文档。我们也会使用它们。例如:如果“一个特性X被V8支持”,那么它会在Chrome和Opera浏览器中起作用。

1.1.2 引擎是如何工作的?

引擎是复杂的,但是它的基础原理是简单的。

  1. 引擎(嵌入的如果它是一个浏览器)读取(解析)脚本。
  2. 然后它将这段脚本转换(编译)为机器语言。
  3. 然后机器代码运行得很快。

引擎在过程的每个阶段都应用优化。它甚至在运行时监视已编译的脚本,分析流经它的数据,并根据这些知识对机器代码进行优化。最后,脚本非常快。

1.2 浏览器中的JavaScript可以做什么?

现代JavaScript是一种“安全”的编程语言。

它不提供对内存或CPU的低级访问,因为它最初是为不需要它的浏览器创建的。

这些功能很大程度上依赖于运行JavaScript的环境。

例如,Node.JS支持允许JavaScript读取/编写任意文件、执行网络请求等功能。

浏览器内的JavaScript可以做任何与网页操作有关的事情,与用户和网络服务器交互。

例如,浏览器内的JavaScript可以:

bull;向页面添加新HTML,更改现有内容,修改样式。

bull;对用户动作作出反应,在鼠标点击、指针移动、按键按下运行。

bull;通过网络向远程服务器发送请求,下载和上传文件(所谓的AJAX和COMET技术)。

bull;获取并设置cookies,向访问者提问,展示信息。

bull;记住客户端(“本地存储”)的数据。浏览器内的JavaScript不能做什么?

为了用户的安全,JavaScript在浏览器中的功能是有限的。其目的是防止恶意网页访问私人信息或损害用户的数据。

此类限制的例子有:

网页内的JavaScript不能够读写硬盘中的任意文件,复制它们或者运行程序。它不能够直接调用操作系统的函数。

现代浏览器允许它处理文件,但是访问是有限的,只有在用户执行某些操作时才提供,比如将文件“删除”到浏览器窗口中,或者通过lt;inputgt;标签选择它。

有一些方法可以与摄像头/麦克风和其他设备进行交互,但它们需要用户的明确许可。因此,一个支持javascript的页面可能不会偷偷地启用网络摄像头,观察周围环境并将信息发送给美国国家安全局。

bull;不同的标签/窗口通常不了解对方。有时他们会这样做,例如,当一个窗口使用JavaScript打开另一个窗口时。但即使在这种情况下,如果来自一个页面的JavaScript来自不同的站点(来自不同的域、协议或端口),那么它也不能访问其他页面。

这就是所谓的“同源策略”。为了解决这个问题,两个页面必须包含一个处理数据交换的特殊JavaScript代码。

限制是为了用户的安全。用户打开的http://anysite.com的页面不能访问另一个带有URL http://gmail.com的浏览器标签,并从那里窃取信息。

JavaScript可以容易地通过网络与当前页面来源的服务器进行交流。但是它从其他站点或域名获取数据的能力是被严重限制的。它还需要明确的来自远程站点的许可(体现在HTTP头中),这也是安全性限制。

如果JavaScript在浏览器之外使用,例如在服务器上,这样的限制是不存在的。现代浏览器也允许安装插件/扩展,这可能会得到扩展的权限。

1.4 是什么使JavaScript与众不同?

关于JavaScript,这里至少有三个要点:

和HTML/CSS的完全整合。

简单的事情被简单完成。

被所有的浏览器所支持并且被默认启用。

这三个技术在除JavaScript以外的所有浏览器技术中都不同时存在。

这使得JavaScript与众不同。这是使得它成为创建浏览器界面的使用最广泛的工具。

在计划学习一项新技术时,检查它的当前现状是有好处的。所以让我们看一下包含新语言和浏览器能力的现代趋势。

1.4什么使JavaScript独一无二?

关于JavaScript,至少有三件很棒的事情:

bull;与HTML/CSS完全集成。

bull;简单的事情简单来做。

bull;所有主流浏览器支持,默认启用。

结合起来,这三种东西只存在于JavaScript中,没有其他的浏览器技术。

这就是JavaScript的独特之处。

这就是为什么它是创建浏览器界面最广泛的工具。

在计划学习一项新技术的同时,检查它的观点是有益的。

因此,让我们来看看包括新语言和浏览器能力在内的现代趋势。

1.5 JavaScript之上的语言

JavaScript的语法并不适合每个人的需要。

不同的人需要不同的功能。

这是意料之中的,因为项目和需求对每个人来说都是不同的。

因此,最近出现了大量的新语言,它们在浏览器运行之前被转换为JavaScript。

现代工具使传输速度非常快和透明,实际上允许开发人员使用另一种语言编写代码,并将其自动转换。

这些语言的例子:

bull;coffeescript是JavaScript的“语法糖”,它引入了更短的语法,允许编写更精确、更清晰的代码。通常是Ruby开发者们喜欢它。

bull;typescript专注于添加“严格的数据类型”,以简化复杂系统的开发和支持。

它是由微软开发的。

bull;dart是一种独

全文共22801字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[13961],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。