变量声明提前,函数声明提前

1、var声明的变量提到当前script块的头部,赋值留在原位置,如果在赋值之前访问变量,返回undefined

console.log('第一次调用:'+sukla)
var sukla='sukla'
console.log('第二次调用:'+sukla)
VM238:1 第一次调用:undefined
VM238:3 第二次调用:sukla
undefined

2、function fn(){}定义的函数会将整个函数体提前到script块的前面去

fn()
function fn(){
console.log('调用fn')
}
VM290:3 调用fn

3、var fn=function(){}定义的函数,只是把函数名的定义提前到script块的前面,函数体还在原位置,如果在函数体之前通过fn()来调用函数会报错

fn()
var fn=function(){
console.log('函数体没提前')
}
fn()
VM290:3 调用fn
VM354:3 函数体没提前

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值