首页 > 代码库 > 关于预解释的理解
关于预解释的理解
正式课---预处理 预处理的解释(变量提声) 在当前的作用域中,JS代码执行之前,浏览器首先会默认的把所有带var和function的进行提前的声明或者定义
1)理解声明和定义 var num =12; 声明(declare):var num; 告诉浏览器在全局作用域中有一个叫num的变量了 定义(defined) num=12;给变量赋值 2)对于带var和function的关键字的在预解释的时候操作还是不一样的 var在与解释的时候只是提前的声明 function在预解释的时候提前的声明+定义都完成了 3)预解释只发生在当前的作用域下,例如:开始只对window下的进行预解释,只有函数执行的时候才会对函数中的进行预解释 4)JS中内存的分类 栈内存:用来提供一个供JS代码执行的环境 ,作用域(全局作用域/私有的作用域) 堆内存:用来存储引用数据类型的值,对象储存的是属性名和属性值,函数储存的是代码字符串。。。 比如console.log(num); var num =12; 这个时候console之前浏览器已经默认声明过num了,但是因为还没有赋值,所以输出是undifined,因为有了预解释所以不会报错 函数执行可以写在函数之上,这就是因为预解释的时候会声明加定义的缘故
关于预解释的理解
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。