-
JS(12) 客户端存储
Web应用允许使用浏览器提供的API实现将数据存储到用户的电脑上,这种客户端存储相当于赋予了Web浏览器记忆功能。比方说,Web应用就可以用这种方式来“记住”用户的偏好甚至是用户所有的状态信息,以便准确地“回忆”起用户上一次访问的位置。客户端存储遵循“同源策略”,因此不同站点的页面是无法互相读取对方存储的数据,而同一站点的不同页面之间是可以互相共享存储数据的,它为我们提供了一种通信机制,例如,一个页面上填写的表单数据可以显示在另外一个页面中。Web应用可以选择它们存储数据的有效期:比如采用临时存储可以让数据保存至当前窗口关闭或者浏览器退出;采用永久存储,可以将数据永久地存储到硬盘上,数年或者数月不失效。
-
JS(11) 脚本化HTTP
超文本传输协议(
HyperText Transfer Protocol,HTTP
)规定Web浏览器如何从Web服务器获取文档和向Web服务器提交表单内容,以及Web服务器如何响应这些请求和提交。Web浏览器会处理大量HTTP。通常,HTTP并不在脚本的控制下,只是当用户单机链接、提交表单和输入URL时才发生。
-
JS(10) 脚本化文档
客户端JavaScript的存在使得静态的HTML文档变成了交互式的Web应用。脚本化Web页面内容是JavaScript的核心目标。每一个Web浏览器窗口、标签页和框架由一个Window对象所表示。每个Window对象有一个document属性引用了Document对象。Document对象表示窗口的内容,Document对象并非独立的,它是一个巨大的API中的核心对象,叫做文档对象模型(
Document Object Model,DOM
),它代表和操作文档的内容。
-
JS(9) 类型、值和变量
计算机程序的运行需要对值(
value
)进行操作。在编程语言中,能够表示并操作的值的类型称作数据类型(type
),编程语言最基本的特性就是能够支持多种数据类型。当程序需要将值保存起来以备将来使用时,便将其赋值给一个变量(variable
)。变量是一个值的符号名称,可以通过名称来获得对值的引用。变量的工作机制是编程语言的另一个基本特性。
-
JS(8) Window对象
Window对象是客户端JavaScript程序的全局对象,本文介绍Window对象的属性和方法,这些属性定义了许多不同的API。
-
JS(7) 客户端JavaScript
window
对象是所有客户端JavaScript特性和API的主要接入点。它表示Web浏览器的一个窗口或窗体,并且可以用标识符window
来引用它。Window
对象定义了一些属性,比如,指代Location
对象的location
属性,Location
对象指定当前显示在窗口中的url,并允许脚本往窗口里载入新的url。
-
JS(5) 类和模块
每个JavaScript对象都是一个属性集合,相互之间没有任何联系。在JavaScript中也可以定义对象的类,让每个对象都共享某些属性,这种“共享”的特性是非常有用的。类的成员或实例都包含一些属性,用以存放或定义它们的状态,其中有些属性定义了它们的行为(通常称为方法)。这些行为通常是由类定义的,而且为所有实例所共享。
-
JS(4) 函数
函数是这样的一段JavaScript代码,它只定义一次,但可能被执行或调用任意次。JavaScript函数是参数化的:函数的定义会包括一个称为形参(
parameter
)的标识符列表,这些参数在函数体中像局部变量一样工作。函数调用会为形参提供实参的值。函数使用它们实参的值来计算返回值,称为该函数调用表达式的值。除了实参之外,每次调用还会拥有另外一个值——本次调用的上下文——就是this
关键字的值。
-
JS(3) 数组
数组是值的有序集合,每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引。JavaScript数组的索引是基于零的32位数,第一个元素的索引为0,最大可能的索引为
4 294 967 294
(2e32-2
),数组最大能容纳4 294 967 295
个元素。
-
JS(2) 对象
对象是JavaScript的基本数据类型。对象是一种复合值:它将很多值(原始值或者其他对象)聚合在一起,可以通过名字访问这些值。对象也可看作是属性的无序集合,每个属性都是一个名值对,属性名是字符串,因此我们可以把对象看成是从字符串到值的映射。