变量类型(Variable Types)
JavaScript有三种声明局部变量的方法:
-
var
- 声明一个变量,可选地赋值. -
let
- 声明一个块范围的变量,可选地赋值。 -
const
- 声明一个块范围的变量,赋值一个不能被重新赋值的值。
var varVariable = 1;
let letVariable = 1;
const constVariable = 1;
varVariable = 2; // Works!
letVariable = 2; // Works!
// $ExpectError
const Variable = 2; // Error!
const、var 和 let
当你未提供类型定义的时候,Flow可以推导类型。
// @flow
const foo /* : number */ = 1;
const bar: number = 2;
var fooVar /* : number */ = 1;
let fooLet /* : number */ = 1;
var barVar: number = 2;
let barLet: number = 2;
let foo: number = 1;
foo = 2; // Works!
// $ExpectError
foo = "3"; // Error!