变量对象

本文深入探讨了JavaScript中变量声明与函数提升的过程,详细解释了如何在执行上下文中创建变量对象,以及如何实现函数和变量声明的提升机制。

 每一个执行上下文都有一个变量对象,在函数内部定义的所有变量和函数都被添加到这个对象的属性.

整个过程的描述:

 1> 对于任何形参,在变相对象上添加相应的属性,并把它们的值设置为传递给函数参数的值

   2> 对于任何函数声明,在变量对象上添加相应的属性,值即为该函数.如果一个函数声明使用了和形参中任何一个相同的标识符,那么那个属性将被覆盖.

   3>对于任何变量声明,在变量对象上添加相应的属性,初始化它们的值为undefined,不管这些变量在源代码中是怎样呗初始化的,如果一个变量使用与一个已经定义过的属性相同的标识符,那么        

     这些定义过的属性不一定被覆盖

 该算法的作用就是是所谓的函数和变量声明的提升,虽然函数作为整体被提升,但变量却只有它们的声明呗提升

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值