var :最原始定义变量的关键字
var content = '你好';
var content = '你也好';
var content = '你好';
content = '你也好';
定义一个content 、后输出content为’你也好‘,初定义值被覆盖
let :
let conten = '你好';
let content = '你也好';//报错,let不能被重复定义
let关键字不能被重复定义
let content = '你好';
content = '你也好';
let关键字允许值的修改
const :
const content = '你好吗';
const content = '我很好';//报错,const关键字也不允许重复定义
const content = '你好';
content = '你也好';//报错
可以粗略认为:const关键字既不能重复定义也不能修改值
解决方法:把初始值改为默认字符串
const content = text.value;
content = '你好';
后续改为用户输入内容须重新修改
为了方便使用我们可以把content 定义的变量改为数组,把用户输入的内容改为数组的第一个元素
const content = [];
content[0] = text.value;
同理我们运用对象的形式也可以修改内容
声明提升:
var 在代码中有声明提升、let、const没有声明提升
(1)变量提升 就是把所有的变量声明提升到当前作用域
最前面 不提升赋值操作
(2)函数提升 就是把所有的函数声明提升到当前作用域
的最前面 不调用函数
块作用域:
let、const关键字和{}可以创建块作用域,var 不支持块级作用域
{
let content = 'hellow';
}
循环:
var、let可以循环,const不能循环