浅谈JS封闭函数、闭包、内置对象


Posted in Javascript onJuly 18, 2017

一、变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量

1、全局变量:在函数之外定义的变量,为整个页面公用,函数的内部外部都可以访问。

2、局部变量:在函数内部定义的变量,只能在定义该变量的函数内部访问,外部无法访问。函数内部访问变量时,先在内部查找是否有此变量,如果有,就使用内部,如果没有,就去外部查找

浅谈JS封闭函数、闭包、内置对象

浅谈JS封闭函数、闭包、内置对象

二、封闭函数封闭函数是javascript中匿名函数的另外一种写法,创建一个一开始就执行而不用命名的函数。

1、一般函数的定义和执行函数

2、封闭函数的定义和执行:(function(){...})();还可以在函数定义前加上"~"或者"!"符号来定义匿名函数。

浅谈JS封闭函数、闭包、内置对象

三、闭包

闭包就是函数嵌套函数,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制收回

浅谈JS封闭函数、闭包、内置对象

1、闭包用途1:将一个变量长期驻扎在内存当中,可用于循环中存索引值

浅谈JS封闭函数、闭包、内置对象

2、闭包用途2:私有变量计数器,外部无法访问,避免全局变量的污染

浅谈JS封闭函数、闭包、内置对象

四、内置对象1、document

比如说在商品详情页观看时,想去购买,这是会跳转到登录页面,登录成功后使用该方法跳转到商品详情页

document.referrer//获取上一个跳转页面的地址(需要服务器环境)

浅谈JS封闭函数、闭包、内置对象

2、location

a、window.location.href // 获取或者重定url地址

浅谈JS封闭函数、闭包、内置对象

b、window.location.search //获取地址参数部分

浅谈JS封闭函数、闭包、内置对象

c、window.location.hash //获取页面锚点或者哈希值

浅谈JS封闭函数、闭包、内置对象

3、Math

a、Math.random 获取0-1的随机值

浅谈JS封闭函数、闭包、内置对象

b、Math.floor 向下取整

浅谈JS封闭函数、闭包、内置对象

c、Math.ceil 向上取整

浅谈JS封闭函数、闭包、内置对象

以上这篇浅谈JS封闭函数、闭包、内置对象就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
封装好的省市地区联动控件附下载
Aug 13 Javascript
javascript Ext JS 状态默认存储时间
Feb 15 Javascript
基于JavaScript实现滑动门效果
Mar 16 Javascript
详解使用JS如何制作简单的ASCII图与单极图
Mar 31 Javascript
微信小程序 获取session_key和openid的实例
Aug 17 Javascript
Vue.js实现按钮的动态绑定效果及实现代码
Aug 21 Javascript
Angular实现点击按钮后在上方显示输入内容的方法
Dec 27 Javascript
iview在vue-cli3如何按需加载的方法
Oct 31 Javascript
js使用swiper实现层叠轮播效果实例代码
Dec 12 Javascript
使用Node.js在深度学习中做图片预处理的方法
Sep 18 Javascript
vue组件库的在线主题编辑器的实现思路
Apr 03 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
Jan 19 Javascript
iscroll实现下拉刷新功能
Jul 18 #Javascript
vue.js实现单选框、复选框和下拉框示例
Jul 18 #Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
Jul 18 #Javascript
iscroll.js滚动加载实例详解
Jul 18 #Javascript
基于iScroll实现下拉刷新和上滑加载效果
Jul 18 #Javascript
jQuery remove()过滤被删除的元素(推荐)
Jul 18 #jQuery
H5基于iScroll实现下拉刷新和上拉加载更多
Jul 18 #Javascript
You might like
PHP的FTP学习(二)
2006/10/09 PHP
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
PHP使用第三方即时获取物流动态实例详解
2017/04/27 PHP
php curl发送请求实例方法
2019/08/01 PHP
extjs 学习笔记(三) 最基本的grid
2009/10/15 Javascript
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
EXT窗口Window及对话框MessageBox
2011/01/27 Javascript
js动态设置div的值下例子
2013/10/29 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
2016/06/01 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
Vue 仿QQ左滑删除组件功能
2018/03/12 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
2018/11/13 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
numpy中以文本的方式存储以及读取数据方法
2018/06/04 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
Python 给下载文件显示进度条和下载时间的实现
2020/04/02 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
virtualenv介绍及简明教程
2020/06/23 Python
python 写一个性能测试工具(一)
2020/10/24 Python
关于.NET, HTML的五个问题
2012/08/29 面试题
结婚喜宴家长答谢词
2014/01/15 职场文书
《我为你骄傲》教学反思
2014/02/20 职场文书
勤俭节约倡议书
2014/04/14 职场文书
优秀班组长事迹
2014/05/31 职场文书
环保志愿者活动总结
2014/06/27 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
迎国庆横幅标语
2014/10/08 职场文书
2014年教育教学工作总结
2014/11/13 职场文书
违纪开除通知书
2015/04/25 职场文书
关爱空巢老人感想
2015/08/11 职场文书
python基础入门之普通操作与函数(三)
2021/06/13 Python