1:基本类型和引用类型?
基本:number string boolean null undefined
var a=1;
引用: object,函数
var arr=[];
function fun(){
}
2:基本类型和引用类型的区别?
基本类型是值的传递,引用类型是地址的传递。
3:js的内存方式?
当在js中写完一句js代码的时候,js会自动开辟内存空间。
内存分为2种:
栈内存:
存储的是基本类型
堆内存:
存储的是引用类型
4:浏览器解析js代码的时候的顺序?
1.首先全局判断查找错误语句.
2.对关键字 var function 声明定义的语句,进行预解析
2.1变量的预解析:
先声明,后定义。
2.2函数的预解析:
声明和定义同时执行。
3.按照从上到下,从左到右的顺序执行js代码
5:函数内部的属性:
函数的属性分为3种:this,arguments,prototype
this的功能:
this的功能具有指向性!
分析this的指向功能:
1:如果在绑定事件函数中,this指向事件前对象。
举例:
btn.onclick=function(){
alert(this)
}
2:在其他函数中,谁调用这个函数,this就指向谁!
6:全局变量和局部变量,全局作用域和局部作用域
全局变量:
函数外有关键字 var声明的变量
window对象下声明的属性
不加关键字var 的变量
全局变量作用域全局window下,只能下面的代码获取。
局部变量:
在函数中加var关键字的变量或函数的形参,对象的属性都是局部变量。
全局作用域:
变量声明在windon下,所有作用于全局。
局部作用域:
变量是私有的,作用当前的函数或对象内部。
7:作用域链
创建好一个函数时,会自动生成一个链条,函数中查找某个属性时,
第一链条有这个属性或者变量,就会直接执行找到,没有就会向上查找,直到找到,
全局也找不到,就会抛出异常(报错),这个过程就是作用域链!
8:垃圾回收机制
垃圾回收机制,就是变量释放自己内存空间的过程。
局部变量的释放是当函数执行完成一次以后,就会释放自己的内存空间,
全局变量的释放就是关闭浏览器后,会释放自己的内存空间。
网友评论