0%

什么是执行上下文

执行上下文就是当前代码的执行环境,包含三种类型

  • 全局执行上下文:创建一个全局的window对象(浏览器的情况下),并且设置this的值等于这个全局对象。
  • 函数执行上下文:每当一个函数被调用时,都会为该函数创建一个新的上下文。每个函数都有它自己的执行上下文,不过是在函数被调用时创建的。
  • Eval 函数执行上下文
Read more »

HTTP介绍

http是什么,用来做什么的

是数据传输协议。Web浏览器、服务器和相关Web应用程序都是通过http相互通信的

Web客户端、服务端

发送请求的一般称为客户端,响应请求的一般称为服务端。HTTP客户端和HTTP服务端共同构成了万维网的基本组件

Read more »

常见浏览器事件

  1. 鼠标

    • click

    • contextmenu

    • mouseover/mouseout

    • mousedown/mouseup

    • mousemove

  2. 键盘

    • keydown
    • keyup
  3. 表单

    • submit
    • focus
  4. Document事件

    • DOMContentLoaded
  5. CSS

    • transitionend
Read more »

浏览器环境和规格

在浏览器中,window有两种角色

  • Javascript代码的全局对象
  • 代表浏览器窗口,并提供控制它的方法

document 对象是页面的主要“入口点”。我们可以使用它来更改或创建页面上的任何内容。

Read more »

历史和应用

  • 一个东西的出现,往往是因为在某个历史阶段人们产生了某些需求
  • 新的东西出现肯定是因为之前的东西不好用
Read more »

前端关注点

  • 解决GUI人机交互问题
  • 跨终端
    • PC/移动浏览器
    • 客户端/小程序
    • VR/AR等
  • Web技术栈
Read more »

用来定义页面元素的样式

  • 设置字体颜色
  • 位置、大小
  • 添加动画效果

组成部分

样式规则

  • 选择器
  • 属性
  • 属性值
  • 声明
    • 属性+属性值
Read more »

函数表达式、函数声明及箭头函数

  1. 函数表达式
    • 必须等到代码执行到它那一行,才会在执行上下文中生成函数定义
  2. 函数声明
    • JavaScript 引擎在任何代码执行之前,会先读取函数声明,并在执行上下文中生成函数定义
      • 这个过程叫函数声明提升
  3. 箭头函数
    • 非常适合嵌入函数
    • 不能使用 arguments、super 和 new.target,也不能用作构造函数
    • 没有 prototype 属性

函数名就是指向函数地指针。

Read more »

代理基础

当目标对象上的进行一些特定的底层操作时,代理允许你拦截这些操作并且覆写

  • 使用Proxy构造函数创建的,两个参数
    • 第一个参数:目标对象
    • 第二个参数:处理程序对象
  • 给目标属性赋值会反映在两个对象上
  • 给代理属性赋值会反映在两个对象上
  • Proxy.prototypeundefined
  • 严格相等可以用来区分代理和目标
Read more »

理解对象

一组属性的无序集合,每个属性或方法都由一个名称来标识,这个名称映射到一个值

可以想象成一张散列表,其中的内容就是一组名/值对,值可以是数据或者函数

创建方法

  1. new Object()然后再给它添加属性和方法
  2. {}对象字面量
Read more »