javascript基础语法

1.加分号;

let a = b+c;//加分号

加分号也有助于在某些情况下提升性能,因为解析器会尝试在合适的位置补上分号以纠正语法错误。

2.关键字

break do in  typeof
case else instanceof var
catch export new void
class extends return while
const finally super with
continue for switch yield
debugger  function this
default if throw
delete import try

3.保留字 :es6将未来作为关键字所保留的词语

//始终保留
enum
//严格模式下保留
implements package public
interface protected static
let private
//模块代码中保留
await

不要使用保留字和关键字,作为标识符和属性名

4.var(所有版本) ,let和const(es6以上)

 4.1 var 声明作用域

使用var 在function exit 时销毁


function a (){
  var message = "hi";  //局部变量
}
a();
console.log(message)//error

4.2 全局变量,省略var,严格模式下报错

function a (){
  message = "hi";  //全局变量
}
a();
console.log(message)//hi

4.3 var声明提升,声明的关键字将自动提升到函数作用域{}的顶部

fuction a(){
    console.log(age);
    var age = 1;
}
a();//underfined


//相当于
fuction a(){
    var age;
    console.log(age);
    age = 1;
}
a();//underfined

4.4 let声明

let声明的范围是块作用域

var声明的范围是函数作用域

//var
if(true){
    var name ="zjw";
    console.log(name);//"zjw"
}
console.log(name);//zjw

//let

if(true){
    let age  = 22;
    console.log(age);//22
}
console.log(age);//22

    

4.5 let不允许在同一个块作用域中出现沉余声明(也叫重复声明)

//var
var a;
var a;

//let
let b;
let b;//error

var name;
let name;/error

let age;
var age;//error

4.6 let暂时性死区

在let声明前执行的瞬间叫做暂时性死区

不会在作用域中被提升

//var
console.log(message);//undefined
var message = "人生经历如小说情节如此精彩"

//let 
console.log(message);//error,暂时性死区
let message = "哈哈哈"






与var全局变量中不同,使用let在全局作用域中不会变成window对象的属性(var声明的则会)

4.7 const 声明

const的行为与let基本相同,唯一一个重要的区别是用它声明变量时必须同时初始化变量,且尝试修改const声明的变量会导致运行时错误。

声明对象,修改对象的属性值不会报错

let i = 0;
for (const j = 0 ;i<5;++i){

    console.log(j)
}
//7,7,7,7,7

for(const key in {a:1,b:2}){
console.log(key)
}
//a,b

for(const value of [1,2,3,4,5]){
    console.log(value);
}
//1,2,3,4,5

声明风格及最佳实践:

1,const优先,let次之

2,不使用var

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

暗逆骇客

你的打赏是我的最大助力

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

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

打赏作者

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

抵扣说明:

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

余额充值