Vue源码分析之Flow篇

认识 Flow

Flow 是 facebook 出品的 JavaScript 静态类型检查工具。Vue.js 的源码利用了 Flow 做了静态类型检查,所以了解 Flow 有助于我们阅读源码。

Read More

Javascript非构造函数的继承

这个系列的第一部分介绍了”封装”,第二部分介绍了使用构造函数实现”继承”。

今天是最后一个部分,介绍不使用构造函数实现”继承”。

一、什么是”非构造函数”的继承?

比如,现在有一个对象,叫做”中国人”。

1
2
3
4

  var Chinese = {
    nation:'中国'
  };

Read More

Javascript构造函数继承

这个系列的第一部分,主要介绍了如何”封装”数据和方法,以及如何从原型对象生成实例。

今天要介绍的是,对象之间的”继承”的五种方法。

比如,现在有一个”动物”对象的构造函数。

1
2
3
4
5
6

  function Animal(){

    this.species = "动物";

  }

Read More

Javascript封装

Javascript是一种基于对象的语言,所有东西几乎都是对象。但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。

那么,如果我们要把”属性”(property)和”方法”(method),封装成一个对象,甚至要从原型对象生成一个实例对象,我们应该怎么做呢?

Read More

Javascript-this

this是 JavaScript 语言的一个关键字,是函数生成时,在函数内部自动生成的指向函数作用域的指针。

1
2
3
function test() {
 this.a = 1;
}

Read More

Javascript闭包

一、作用域

要理解闭包,首先必须理解Javascript特殊的变量作用域,变量的作用域有两种:全局变量和局部变量。

Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。

1
2
3
4
5
6
7
  var a=111;

  function a1(){
    alert(a);
  }

a1(); // 111

另一方面,在函数外部无法读取函数内的局部变量。
1
2
3
4
5
6
function a1(){
    var a=999;
  }

  alert(a); // a is not defined


这里有一个地方需要注意,函数内部声明变量的时候,一定要使用let命令。如果不用的话,实际上声明了一个全局变量!
1
2
3
4
5
6
7
function a1(){
    a=111;
  }

  a1();

  alert(a); // 111

Read More

JavaScript基础

JavaScript规定了几种语言类型

Number,String,Boolean,Null,Undefined,Object,Symbol

Read More

Node.js + MySQL 实现曾删改查,上传图片, sms服务~

源码戳这里

假设您已经安装了 Node.js,创建目录以保存应用程序,并将其设置为工作目录。

Read More

Express 搭建 服务端 实现简单 api 交互

安装

假设您已经安装了 Node.js,创建目录以保存应用程序,并将其设置为工作目录。

1
2
$ mkdir myapp
$ cd myapp

Read More

glup + ts

安装

假设您已经安装了 Node.js,创建目录以保存应用程序,并将其设置为工作目录。

创建简单工程
我们首先创建一个新目录。 命名为tsDemo,也可以使用任何你喜欢的名字。

Read More