位置: 编程技术 - 正文

关于JS 预解释的相关理解(js解释器有哪些)

编辑:rootadmin

推荐整理分享关于JS 预解释的相关理解(js解释器有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js中什么是预解析,js中什么是预解析,关于javascript的说法,js解释性语言的理解,js解释器有哪些,js解释性语言的理解,js预解析面试题,js预解析解释,内容如对您有帮助,希望把文章链接给更多的朋友!

1、JS中的内存空间分为两种:栈内存、堆内存

栈内存:提供JS代码执行的环境;存储基本数据类型的值; ->全局作用域或者私有的作用域其实都是栈内存

堆内存:存储引用数据类型的值(对象是把属性名和属性值存储进去,函数是把函数体中的代码当做字符串存储进去)

2、当浏览器加载我们HTML页面的时候,首先会提供一个供JS代码执行的环境->全局作用域(global->window)

3、在JS代码执行之前,浏览器还需要自己做一些事情:把所有带var/function关键字的进行提前的声明或者定义 ->"预解释"(变量提声)

声明(declare) -> 告诉浏览器我有这样一个东西啦,例如 var num1; function fn;

定义(defined) -> 给我们声明的变量或者函数赋值,例如 num1=; fn=function(){}

[重要]变量只声明没有定义,默认的值是undefined(未定义)

4、var和function在预解释阶段处理是不一样的

var -> 在预解释的时候只是提前的声明了这个变量,只有当代码执行的时候才会完成赋值操作

function -> 在预解释的时候会提前的把声明加定义都完成了(在代码执行的时候遇到定义的代码直接的跳过)

[重要]刚开始只对window下的进行预解释,fn函数中目前存储的都是字符串,所以var total没啥实际的意义,所以不进行预解释 -> "预解释是发生在当前作用域下的"

5、在全局作用域下声明的变量是全局变量

在私有作用域中声明的变量是私有变量;函数的形参也是私有的变量;

关于JS 预解释的相关理解(js解释器有哪些)

如何分辨函数中出现的变量是私有的还是全局的&#;

首先看是否为形参,然后看是否在私有作用域中声明过(有没有var过),两者有其一就是私有的变量,那么在当前函数中不管什么位置出现都是私有的,和全局的没有半毛钱的关系;如果两者都没有,说明不是私有的,则往其上一级作用域进行查找...

6、函数执行的时候会形成一个新的私有的作用域(栈内存),供函数体中的代码执行;

1)给形参赋值2)私有作用域下的预解释3)私有作用域下的代码执行

形成的新的私有的作用域还保护了里面的私有变量不受外界的影响,我们把函数的这种保护机制->"闭包

区别:带var的可以在代码执行前进行声明,而不带var的不能提前的声明

1、不管条件是否成立都要进行预解释

2、预解释只发生在"="的左边,只把左边的进行预解释,右边的是值是不进行预解释的

匿名函数之函数表达式:把函数定义的部分当做值赋值给一个变量或者元素的事件

预解释的时候:var fn; ->fn的默认值是undefined

3、函数体中return下面的代码都不在执行了,但是下面的代码需要参加预解释;而return后面的东西是需要处理的,但是由于它是当做一个值返回的,所以不进行预解释;

4、匿名函数的function在全局作用域下是不进行预解释的

匿名函数之自执行函数:定义和执行一起完成了

(function(num){})();

5、在预解释的时候,如果遇到名字重复了,只声明一次,不重复的声明,但是赋值还是要重复的进行的

在JS中变量的名字和函数的名字如果一样是算作重复的

预解释:

标签: js解释器有哪些

本文链接地址:https://www.jiuchutong.com/biancheng/370147.html 转载请保留说明!

上一篇:js选择器全面解析(jsclass选择器)

下一篇:js改变css样式的三种方法推荐(js修改css样式属性不生效)

  • 税务局代开发票还要纳税吗
  • 收到税费返还是什么现金流量
  • 公允价值变动损益属于什么科目
  • 房地产开发企业增值税税率
  • 货运增值税发票抵扣条件
  • 多项固定资产能否合并入账
  • 劳务报酬所得怎么扣税
  • 机动车销售发票是否需要认证
  • 现金流量表关注指标
  • 网银费用及回单箱费用账务处理?
  • 对方承担税差该如何入账?
  • 财务费用做什么明细账
  • 事业单位经营结余为负数的原因
  • 企业赔款可以抵税吗
  • 报销跨月还能报销吗
  • 缺联发票税务怎么处理
  • 宜宾劳务公司有哪些
  • 处置打包债权如何缴纳个人所得税?
  • 转回给挂靠单位的钱怎么做分录
  • 房地产开发企业的土地使用权计入哪里
  • 资产评估合同属于什么合同
  • 4s店修车送保养
  • 发票备注栏的填写规定
  • 航天信息服务费是什么费用
  • php json转对象
  • php有啥用
  • set up 和establish的区别
  • 工会会员会费缴费证明怎么开
  • mac设置在哪里设置
  • 汽车维修行业会计分录
  • 核定征收的企业利润怎么处理
  • PHP:curl_getinfo()的用法_cURL函数
  • 在建工程进项税可以抵扣吗
  • 年终奖税务筹划合法吗
  • php生成条形码的代码
  • php代码大全及其含义
  • 前端控制台
  • 前端 高级
  • 毫米波雷达的硬件构成
  • 如何快速上手看门狗2
  • 子公司减资母公司怎么算
  • 引导式申报带出来的开票额与金税盘显示的不一致
  • 应收账款能想到什么
  • 个人所得税换了电脑后,重新录入,离职的人也要录入吗
  • 电脑自学网
  • 代销货物如何进账
  • 利润分配的5个基本原则
  • 土地增值税采用
  • 扣税时账上没钱怎么办
  • 增值税红字冲销能跨年吗
  • 安置用房视同销售,怎么确认扣除费用?
  • 营改增涉及哪些项目
  • 资产收购一般税务处理
  • 有借必有贷借贷必相等的记账规则适用于
  • 根据企业会计准则第4号固定资产,企业可选用的折旧方法
  • 商业企业的会计科目设置
  • xtrabackup备份原理
  • mysql函数大全以及举例
  • windows的实验步骤
  • Windows Server 2008与2012建立林信任详细步骤
  • 移动u盘的作用
  • 电脑网络唤醒功能
  • Win10 Mobile 10572怎么更新升级? 需回滚到WP 8.1
  • 电脑xp系统如何
  • 怎么修改Windows账户密码
  • win7如何关闭ie浏览器
  • js判断手机浏览器设置了电脑版浏览
  • Unity3D游戏开发培训课程大纲
  • js 函数执行顺序
  • jquery form表单
  • android webview获取文本
  • js获取指定元素
  • android 安卓开发 openssl
  • jquery弹出窗口
  • jquery里面的$是什么意思
  • 浅谈python 四种数值类型(int,long,float,complex)
  • 农产品初加工有哪些
  • 税控普通发票
  • 请问各位专家金线吊乌龟有什么功效
  • 个人所得税如何办理退税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设