js进阶之闭包
Posted 小拽A
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js进阶之闭包相关的知识,希望对你有一定的参考价值。
1.首先说下什么是闭包,闭:封闭,包:就像我们的包包~;虽然我在扯淡但是也有其道理咯,闭包就有点像java里面的封装一样,包属性和方法都封装到对象内部,在外部通过共有的get、set方法获取或者设置其值,但是js中不是这样的,在js中是通过闭包的方式来实现的,闭包及在方法外部操作内部私有属性和方法的方法,闭包有点不好理解,最好先把方法对象那部分理解好在看,否则理解有难度,
2.上代码吧:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
var name="The Window";
var object={//创建对象
name:"My object",//对象全局属性
getNameFunc:function(){//object对象的对象属相
var name="object func";//object对象的对象属相的私有属性
return function(){//object对象的对象属相的私有对象
return name;
};
}
};
alert(object.name);//放回object全局属性
alert(object.getNameFunc()());//访问内部方法的私有属性
</script>
</body>
</html>
以上是关于js进阶之闭包的主要内容,如果未能解决你的问题,请参考以下文章
js进阶二(applycallbind闭包函数也是对象概念)
03JavaScript程序设计修炼之道_ JS进阶 OOP构造函数 2019-07/21-171247***0725-200514