JavaScript高级程序设计(第四版)--学习记录之变量

var关键字:定义变量同时可以进行赋值

var message="hello"
message = 10

可以改变保存的值,也可以改变值的类型,但是不推荐这样写。

  • var声明的变量会成为包含它的函数的局部变量。
function test(){
var message = "hello";
}
test();
console.log(message);//出错
  • var声明提升:变量会自动提升到函数作用域顶部,函数作用域。
function test(){
console.log(message);
var message = "hello";
}
test();//undefined
//等价于以下代码
function test(){
var message;
console.log(message);
message = "hello"
}
test();

 let关键字:定义变量同时可以赋值。

let message = "hello"
  • let不允许同一个块作用域中出现冗余声明
let message;
let message;//标识符已经声明过了
  • let存在暂时性死区即不存在变量提升
console.log(message);//ReferenceError:message没有定义
let message = "hello";
  • let在全局作用域中声明的变量不会成为window对象的属性,var声明的变量则会。
var name = "Jason";
console,log(window.name);// 'Jason'

let age = 42;
console.log(age);// undefined

const关键字:声明变量并同时赋值且值不允许修改。

const message;//出错
const message = 'hello';
message = Jason';//TypeError:给常量赋值

const name = 'Jason';
const name = 'Jason';//SyntaxError:不允许重复声明

数据类型:

  • 基本数据类型:Undefined、Null、Boolean、Number、String、Symbol
  • 复杂数据类型:Object
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zwq8023520

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值