Javascript 升级复习

来源:互联网 发布:软件源代码查询 编辑:程序博客网 时间:2024/05/06 02:24
解释型和编译型
解释型,php javascript 解释型,就是先翻译成计算机能够认识的二进制语言,解释一行代码就行。
编译型 语言: 先把代码翻译成计算机能够认识的语言之后,要生成一个二进制文件,exe,以后等再去执行代码的时候就可以运行exe。
基本数据类型:
1.基本数据类型是值传递
2.引用数据类型是引用传递
undefined,首先就是一个值,声明了一个变量,但是没有初始化。
var 告知解析器存在了一个变量,初始化,第一次赋值。
强制类型转换时,undefined被转化成false。
null没有定义的对象,它就是一个空。(null是一个对象。)
如果一个变量没有值就是undefined,如果一个对象没有定义,就是null。
整形和浮点型都是数值类型。
boolean
number
srting
引用数据类型
1.数组
2.对象
3.函数
数组,数组也是对象,但是在alert()这个数组的时候,在js内部有方法可以讲对象转化成字符串
函数也是数据类型,他的值就是函数体。
对象(属性的结合)
函数的全局作用域和作用域链
首先,js是基于对象,是因为js有没有类的概念,比如变量,函数,数组,都是某个对象的属性,这个最大的全局对象就是window对象。alert();
js中的作用域链就是从最底级的作用域向window作用域查找的过程。
js中,定义函数时和调用函数时的参数数量可以不一致,js不是完全采用形参的形式,而是调用这个函数的时候,形成了一个对象,arguments对象,来管理实际参数变量的作用域。结合代码执行流程和变量的作用域,我们javascript解析引擎解析js代码的时候,因为我们可以再函数定义之前就调用这个函数,说明在解释的时候就已经将函数的定义告知解释器了,此时js解释器会将函数内部的所有局部变量同时告知解析器,但是这个时候并不是使用真实的值,而是全部设置为undefined。
怎么去声明一个局部变量?在函数内部通过var关键字声明一个局部变量,如果这个变量没有var就是全局变量。
原创粉丝点击