TSLint:提示错误:'fd' is never reassigned. Use 'const' instead
let
fd
=
new
window
.
FormData
(
data
)
于是大致了解一下这几个定义:
1、const:如果一个变量只有在声明时才被赋值一次,那么应该使用'const',const定义的变量不可以修改,而且必须初始化。
const
const_params
=
'const_params'
;
//正确
// const const _params;//错误,必须初始化
console
.
log
(
'函数外const定义const_params:'
+
const_params
);
//有输出值
// const_params = 5;
// console.log('函数外修改const定义const_params:' + const_params);//无法输出
2、let:的使用,需要”javascript 严格模式”:'use strict';;
'use strict'
;
let
let_params
=
'let_params'
;
console
.
log
(
let_params
);
3、var:应用的比较普遍
-- 'use strict'
;
var
var_params
=
'var_params'
;
console
.
log
(
var_params
);
// 1声明后未赋值,表现相同
'use strict'
;
(
function
() {
var
varTest
;
let
letTest
;
console
.
log
(
varTest
);
//输出undefined
console
.
log
(
letTest
);
//输出undefined
}());
// 2使用未声明的变量,表现不同:
(
function
() {
console
.
log
(
varTest
);
//输出undefined(注意要注释掉下面一行才能运行)
console
.
log
(
letTest
);
//直接报错:ReferenceError: letTest is not defined
var
varTest
=
'test var OK.'
;
let
letTest
=
'test let OK.'
;
}());
// 3重复声明同一个变量时,表现不同:
'use strict'
;
(
function
() {
var
varTest
=
'test var OK.'
;
let
letTest
=
'test let OK.'
;
var
varTest
=
'varTest changed.'
;
let
letTest
=
'letTest changed.'
;
//直接报错:SyntaxError: Identifier 'letTest' has already been declared
console
.
log
(
varTest
);
//输出varTest changed.(注意要注释掉上面letTest变量的重复声明才能运行)
console
.
log
(
letTest
);
}());
// 4变量作用范围,表现不同
'use strict'
;
(
function
() {
var
varTest
=
'test var OK.'
;
let
letTest
=
'test let OK.'
;
{
var
varTest
=
'varTest changed.'
;
let
letTest
=
'letTest changed.'
;
}
console
.
log
(
varTest
);
//输出"varTest changed.",内部"{}"中声明的varTest变量覆盖外部的letTest声明
console
.
log
(
letTest
);
//输出"test let OK.",内部"{}"中声明的letTest和外部的letTest不是同一个变量
}());
以供后期学习参考;