位置: 编程技术 - 正文

关于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样式属性不生效)

  • 三税率什么意思
  • 增值税电子普票没有电子章有效吗
  • 一般纳税人的做账流程
  • 我国会计准则规定,会计核算以人民币为记账本位币
  • 差额征收企业指什么企业
  • 普票为啥不能抵扣
  • 转账支票有没有密码
  • 无息贷款合同要按手印吗
  • 期初试算平衡表不平衡怎么查
  • 签章是签字还是盖章 财务
  • 生产企业出口货物可享受免税并退税
  • 营改增后商场进场费如何缴税?
  • 营改增后转让土地使用权增值税
  • 暂估成本结转后怎么冲回
  • 京东企业提现
  • 应入固定资产的已做费用,如何调账
  • 代扣代缴个人所得税会计分录怎么做
  • 取得企业增值税发票
  • 车辆维修费
  • 保安服务费可以计入劳务费吗
  • 减税降费在中国 应形成制度性
  • 担保扶持基金可以冲代偿吗
  • 预收销货款属于负债吗
  • 进销存账本怎么做
  • win7系统为什么没有虚拟光驱
  • thinkphp微信公众号开发
  • typecho插件开发教程
  • win11dev预览修复工具
  • ipv6无网络访问权限怎么解决
  • movie maker是什么软件
  • 免抵退税务处理
  • 实习生究竟该怎么缴个税?
  • 固定资产以前年度未入账怎么处理
  • 代开增值税额与实际缴款额差一分钱如何入账
  • 前端进阶教程
  • 增值税专用发票怎么开
  • 产品售后维修费放在什么会计科目核算
  • 个体工商户税务登记需要哪些资料
  • 个税显示申报成功是不是就可以了
  • 坏账准备是什么性质的科目
  • 资产损失税前扣除最新政策2021
  • sql2005服务无法启动sql安装方法
  • db2 798
  • 收到预付款发票但是货未到怎么办
  • 村委会靠什么赚钱
  • 应收账款贷方如何核算
  • 车船税不开发票怎么做账?
  • 融资租入固定资产改建支出计入
  • 关于小规模纳税人的说法正确的是
  • 企业清算未收到发票
  • 公司接待考察团的费用入哪个科目
  • 外包加工如何做账
  • 法定盈余公积一般按照企业
  • 以考核为由扣除工资
  • 小规模纳税人购进税控机的税如何抵扣
  • 固定资产明细账怎么填
  • sqlserver2008分页查询
  • sql语句中截取字符串
  • linux如何安装c语言编译器
  • 苹果今日报价
  • 苹果系统最新版本
  • safari macos
  • 快速任务栏
  • xp简单实用的网络连接
  • mac关机快捷键是什么键
  • tomcat配置虚拟主机
  • microsoft ime进程
  • linux测试软件
  • win7显示ipv6无网络访问权限
  • ms-dos 6.2批处理文件高级指南
  • unity3d android
  • Node.js中的全局对象有
  • unityc#脚本
  • nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
  • 深入理解linux内核第三版
  • 国家税务局湖北省税务总局
  • 增值税普通电子发票有什么用
  • 发票换领
  • 税务局领取发票后怎么操作
  • 怎么看扣税明细
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设