0%

一、闭包

1、概念

[MDN](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures) 的解释:
一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包

2、作用

1. 让外部访问函数内部变量成为可能;(隐藏变量)

2. 局部变量会常驻在内存中;

3. 可以避免使用全局变量,防止全局变量污染;
阅读全文 »

一、createElement 和 JSX

  1. createElement

创建并返回指定类型的新 React 元素。其中的类型参数既可以是标签名字符串(如 ‘div’ 或 ‘span’),也可以是 React 组件 类型 (class 组件或函数组件),代码编写复杂

1
2
3
4
5
const element = React.createElement(
'h1',
{className: 'greeting'},
'Hello, world!'
);
  1. JSX
    下面代码会被编译为和上面相同的代码,完全等价

    1
    2
    3
    4
    5
    const element = (
    <h1 className="greeting">
    Hello, world!
    </h1>
    );

    注意:

    • 在 JSX 中给元素添加类, 需要使用 className 代替 class
    • JSX 中可以直接使用 {} 中间写 JS 代码
阅读全文 »

1、computed

  • computed 虽然看上去是方法,但实际上是计算属性,因此,使用方法和属性的使用方法相同,不需要加括号。

  • computed 会根据依赖的数据动态显示,并且计算结果会被缓存,只有在依赖的数据发生变化的之后再次获取 computed 的值才会重新计算。

阅读全文 »

一、原理

Vue会遍历data对象的所有property,并使用Object.defineProperty把这些property全部转为getter/setter。通过getter/setter让 Vue 能够追踪依赖,在property被访问和修改时通知变更。

阅读全文 »

1、简介

Webpack 是一个模块打包工具(module bundler),其最主要的功能就是模块打包,模块打包,通俗地说就是:找出模块之间的依赖关系,按照一定的规则把这些模块组织合并为一个 JavaScript 文件。Webpack 认为一切都是模块,JS 文件、CSS 文件、jpg/png 图片等等都是模块。

阅读全文 »

一、MVC

MVC 包括三类对象:

  1. 模型 model 用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法,会有一个或多个视图监听此模型。一旦模型的数据发生变化,模型将通知有关的视图。
阅读全文 »

1、Cookie

  • 概述:

    HTTP Cookie(也叫 Web Cookie 或浏览器 Cookie)是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。通常,它用于告知服务端两个请求是否来自同一浏览器,如保持用户的登录状态。
    通俗的说,Cookie 是服务器下发给浏览器的一段字符串
    浏览器必须保存这个 Cookie(除非用户删除)
    之后发起相同二级域名请求,浏览器必须附上 CookieMDN

阅读全文 »

一、同源策略

  1. 同源定义:
  • 源: window.Origin 或 location.origin 可以得到当前源
  • 源=协议+域名+端口号
  • 如果两个 url 协议、域名、端口号完全一致,那么这两个 url 就是同源的
阅读全文 »

  1. 概述

AJAX:Asynchronous JavaScript + XML()

  • AJAX 是浏览器上的功能,浏览器可以发请求,收响应
  • 浏览器在 window 上加了一个 XMLHttpRequest 函数
  • 用这个构造函数(类)可以构造出一个对象
    JS 通过它实现发请求,收响应
阅读全文 »