JavaScript学习之小白篇(五-函数的作用域及创建对象)

好好学习 ,天天向上。Are you ready?在这里插入图片描述

一、作用域及作用域链
1. 什么是作用域?
2. JS在ES5这个版本中有哪些作用域?
1》script作用域(全局作用域)
声明在全局作用域的变量,叫全局变量,同时也是window对象的属性
声明在全局作用域的函数,叫全局函数, 同时也是window对象的方法
特点:
1. 全局范围内的变量和函数在全局范围有效即整个页面有效。
2. 全局变量:生存时间,从声明开始,到整个程序退出时,释放内存空间。
2》函数作用域(局部作用域)
声明在函数作用域中的变量或形参,叫局部变量。
声明在函数作用域中的函数,叫局部函数
特点:1.局部范围内的变量或函数只在所在函数作用域中有效。
2.局部变量:生存时间,从调用函数时开始,到函数调用结束后,释放内存空间。
3》 只要进入作用域,就会启动JS解析器(预解析和逐行解读代码)
1.预解析 : 找 var function 形参
2.逐行解读代码:1.执行表达式2.函数调用
4》 执行表达式时,按照作用域链的方法去寻找所需的变量。
5》 当变量名和函数名相同时,丢变量,保函数
6》 当有多个script标签时,从上到下,依次解析并解读每一个script标签
二、递归函数:自己调用自己的过程,递归调用
1.递归的本质 : 实现循环
2. 循环三要素 : 起点、终点、步进
三、如何创建对象?
1. 字面量的方式创建 如: var obj = {};
格式 : {key : value , key : value,key : value,……}
2. new Object()
3. 构造函数的方式。
格式:
function 构造函数名([形参,形参]){
this.属性 = 值;
this.方法 = function([形参,形参]){
[return] 值;
}
}

注:1.构造函数名尽量使用大驼峰
2.构造函数中的this,代表的是 通过该构造函数new出来的对象。
四、如何访问对象中的属性和方法?
1. 对象名.属性
对象名.方法()
2. 对象名[‘属性’]
对象名方法()

猜你喜欢

转载自blog.csdn.net/weixin_43654258/article/details/84937929