位置: 编程技术 - 正文

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

  • 公司利润税怎么交
  • 电子税务局怎么查进项发票明细
  • 如何做好服务 服务行业
  • 房产税和城镇土地使用税的区别
  • 财务费用最后怎么结转
  • 房地产企业成本包括哪些
  • 应税消费品的税目有哪些
  • 土地使用税的免税规定有哪些
  • 本期已认证但不想抵扣申报表怎么填写
  • 住房公积金证书插上为什么登不进去
  • 缴纳企业所得税怎么计算
  • 5.0车船税和交强险一年多少钱
  • 企业筹办期间,发生亏损,应该计算为亏损年度
  • 关于发票入账的会计分录
  • 购入原材料没有发票只有入库单
  • 收到管理费用的会计科目
  • 高新产业扶持补贴怎样申请
  • 零申报工会经费滞纳金怎么算
  • win10蓝牙鼠标已连接不显示
  • 电脑怎么备份系统win7
  • 营业外支出的核算内容包括
  • 合并报表六大抵消分录通俗理解
  • 公司外币账户怎么登录
  • 车辆购置税可以代缴吗
  • 在建工程完工后转入哪里
  • 股票的交易费用是怎么算的
  • php中字符串函数
  • 普通发票主营业务收入销项负数发票怎么做账
  • 常见的财务报表分析方法有多选题
  • ipad哪款最贵
  • 资产减值损失结转怎么算
  • 磷酸二氢钙生产
  • 卡齐兰加国家公园地理位置
  • php的strcmp
  • gridviewcolumn
  • 解决谷歌浏览器自动添加书签问题
  • 车道线检测视频素材
  • Yii2针对游客、用户防范规则和限制的解决方法分析
  • 结转坏账准备是什么意思
  • 财务章和公章下面数字一样吗
  • 估价入库怎么记账
  • 连带责任担保会被拘留吗
  • 网上申报完还需要去税务局吗
  • uni appp
  • 万元版和十万元版发票图片
  • 税前扣除的支出
  • 党建工作经费1%
  • 新会计准则计提减值准备
  • 机器设备可以作为出资方式吗
  • 小规模纳税人技术维护费可以抵扣吗
  • 清算中的资产损失
  • 增值税专用发票怎么开
  • 在建工程前期投标流程
  • 部门召开会议
  • 上一年度主营业务成本多计提了
  • 应交税费其他收入会计分录
  • 购买债券的交易费计入什么科目
  • 预付账款的账务处理过程
  • 办公用品的发票可以抵扣吗
  • mysql忘记了初始密码
  • windows vista电脑
  • linux中sed详细用法
  • 电脑卡 硬盘100%
  • mac邮件应用规则
  • Ubuntu 14.04 64位搭建ADT开发环境的方法
  • windows8正在准备windows
  • centos默认字体
  • Linux中systemd target命令使用详解
  • cocos2d-x 3.2 在window平台vs2012下解决中文乱码问题
  • 使用div+css进行网页布局的三种方式
  • css布局的经典网站
  • vue_api_server
  • 浅析Python中MySQLdb的事务处理功能
  • javascript的push方法
  • 国际货运怎么代理
  • 佛山顺德怎么坐地铁到广州
  • 河南省城镇土地使用税优惠政策2020
  • 南京江宁区地税局待遇(南京各个区税务局待遇)
  • 车辆保险开增值税吗
  • 江苏联通客服电话人工服务号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设