JavaScript 高级

1.学习目标

  - 理解面向对象开发思想
  - 掌握 JavaScript 面向对象开发相关模式
  - 掌握在 JavaScript 中使用正则表达式

2.回顾

JavaScript 是什么

  • 解析执行:轻量级(耦合度低)解释型的

  • 语言特点:动态,头等函数 (First-class Function)

    • 又称函数是 JavaScript 中的一等公民

  • 执行环境:在宿主环境(host environment)下运行,浏览器是最常见的 JavaScript 宿主环境

    • 但是在很多非浏览器环境中也使用 JavaScript ,例如 node.js

    MDN-JavaScript

JavaScript 的组成

  • ECMAScript - 语法规范

    • 变量、数据类型、类型转换、操作符

    • 流程控制语句:判断、循环语句

    • 数组、函数、作用域、预解析

    • 对象、属性、方法、简单类型和复杂类型的区别

    • 内置对象:Math、Date、Array,基本包装类型String、Number、Boolean

  • Web APIs

    • BOM

      • onload页面加载事件,window顶级对象

      • 定时器

      • location、history

    • DOM

      • 获取页面元素,注册事件

      • 属性操作,样式操作

      • 节点属性,节点层级

      • 动态创建元素

      • 事件:注册事件的方式、事件的三个阶段、事件对象

JavaScript 可以做什么

阿特伍德定律:

Any application that can be written in JavaScript, will eventually be written in JavaScript.

任何可以用JavaScript来写的应用,最终都将用JavaScript来写

阿特伍德 stackoverflow的创始人之一

JavaScript 执行过程

JavaScript 运行分为两个阶段:

  • 预解析

    • 全局预解析(所有变量和函数声明都会提前;同名的函数和变量函数的优先级高)

    • 函数内部预解析(所有的变量、函数和形参都会参与预解析)

      • 函数

      • 形参

      • 普通变量

  • 执行

先预解析全局作用域,然后执行全局作用域中的代码,在执行全局代码的过程中遇到函数调用就会先进行函数预解析,然后再执行函数内代码。

 
原文地址:https://www.cnblogs.com/nanren/p/13817083.html