Coursera 笔记

Module 03 · JavaScript Programming for Web ApplicationsWeb 应用 JavaScript 编程

JavaScript Language: Overview and SyntaxJavaScript 语言概览与语法

Coursera ↗


学习目标

观看本视频后,您将能够:

  • 描述 JavaScript 原始类型 (Primitives) 和 对象 (Objects)。
  • 了解 JavaScript 的起源、核心特性及其对象模型。

JavaScript 的起源与用途

  • 起源:JavaScript 是一种脚本语言,基于 ECMAScript 标准,最初设计用于 Netscape Navigator 浏览器。
  • 支持广泛:如今,几乎所有浏览器都支持 JavaScript。
  • 与 Java 无关:尽管名字中含有“Java”,JavaScript 与 Java 是完全不同的语言。

动态网页的关键角色

  • JavaScript 赋予静态网页动态行为。
  • 通过操作浏览器生成的 文档对象模型 (DOM),JavaScript 可以动态更改网页内容。

Ajax 和 JSON 的重要性

  • Ajax (Asynchronous JavaScript and XML):
    • 提供异步服务器调用的技术。
    • 结合 HTML、CSS 和 DOM,增强网页的交互性。
    • 如今,JSON (JavaScript Object Notation) 通常替代 XML,作为更简洁的数据格式。


JavaScript 数据类型

原始类型 (Primitives)

JavaScript 包含 5 种原始数据类型:

数据类型 示例 描述
Number 0、3.1412 包括整数和浮点数,还支持 NaN 和 Infinity。
String "Hello World"、'Text' 字符串用单引号或双引号括起来。
Boolean true、false 布尔值,表示真假状态。
Null null 表示空值,指示变量没有值。
Undefined undefined 表示变量未赋值或变量不存在。


原始类型的特性

  • 原始类型的值没有属性或方法。
  • JavaScript 使用对应的 包装对象 (Wrapper Objects) 提供额外的方法处理这些值。
    • 包装对象名称与原始类型相同,但首字母大写。
    • 例如:Number、String 和 Boolean。

包装对象示例:

let num = new Number(10); // 创建一个 Number 对象
console.log(num.valueOf()); // 转为原始数值类型:10


复杂类型:对象 (Objects)

数组 (Arrays)

  • 数组是一个特殊的对象,用于通过索引存储和检索数据。
  • 零基索引:数组的第一个元素索引为 0。
  • 动态调整大小:可以通过添加或删除元素来扩展或缩小数组。

数组声明方式:

  • 构造函数:
    let arr = new Array(1, 2, 3);
    
  • 数组字面量:
    let arr = [1, 2, 3];
    

日期对象 (Date)

  • 用于表示日期和时间。
  • 通过构造函数 new Date([参数]) 创建日期对象:
    • 无参数时返回当前本地日期和时间。
    • 可以传递字符串或数字参数指定日期和时间。
  • 示例:
    let today = new Date(); // 当前日期和时间
    console.log(today.toString()); // 转为字符串
    

错误处理与错误对象

错误对象 (Error Object)

JavaScript 在发生异常时会创建 错误对象实例。

错误对象的核心属性:

属性 描述
message 描述错误的详细信息。
name 错误的类型(如 RangeError)。

常见错误类型:

  • RangeError:数值超出有效范围。
  • SyntaxError:语法错误。
  • ReferenceError:引用了不存在的变量。


JavaScript 的关键概念

特性 描述
typeof 关键字 用于检查变量的数据类型,例如 typeof 10 返回 "number"。
NaN 和 Infinity 数值类型包括 NaN(非数字)和 Infinity(无穷大)。
字符串包装对象 使用 new String() 创建字符串对象,调用 .valueOf() 转为原始字符串类型。
数组动态扩展 数组可以动态添加或删除元素,arr.push() 添加元素,arr.pop() 删除最后一个元素。
日期对象方法 使用 toString() 将日期对象转换为字符串;也可使用构造函数指定日期,例如 new Date(2025, 0, 11) 表示 2025 年 1 月 11 日。
错误对象扩展 开发者可以扩展内置错误对象以创建自定义错误类型。

总结

在本视频中,您学习了:

  1. JavaScript 的功能:为静态内容添加动态行为,提升网页交互性。
  2. 数据类型:原始类型包括 Number、String、Boolean、Null 和 Undefined。
  3. 包装对象:为原始类型提供方法,例如 valueOf 和 toString。
  4. 对象类型:包括数组和日期对象,支持动态操作与时间管理。
  5. 错误处理:通过错误对象管理异常,支持内置和自定义错误类型。

通过掌握这些基本概念,您将更好地理解和运用 JavaScript 构建动态网页! 🌐