浅谈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 相关文章推荐
JavaScript入门教程(5) js Screen屏幕对象
Jan 31 Javascript
由JavaScript技术实现的web小游戏(不含网游)
Jun 12 Javascript
js下写一个事件队列操作函数
Jul 19 Javascript
jquery插件 autoComboBox 下拉框
Dec 22 Javascript
原生js实现的贪吃蛇网页版游戏完整实例
May 18 Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
Jul 25 Javascript
JS键盘版计算器的制作方法
Dec 03 Javascript
Vue.extend构造器的详解
Jul 17 Javascript
JS的Ajax与后端交互数据的实例
Aug 08 Javascript
原生JS封装_new函数实现new关键字的功能
Aug 12 Javascript
基于JavaScript 实现拖放功能
Sep 12 Javascript
echarts实现晶体球面投影的实例教程
Oct 10 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学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
PHP+jQuery 注册模块开发详解
2014/10/14 PHP
php查找指定目录下指定大小文件的方法
2014/11/28 PHP
添加到收藏夹代码(兼容几乎所有的浏览器)
2007/01/09 Javascript
js 实现复制到粘贴板的功能代码
2010/05/13 Javascript
jquery中实现简单的tabs插件功能的代码
2011/03/02 Javascript
无缝滚动改进版支持上下左右滚动(封装成函数)
2012/12/04 Javascript
两种方法实现在HTML页面加载完毕后运行某个js
2014/06/16 Javascript
jquery实现下拉框功能效果【实例代码】
2016/05/06 Javascript
bootstrap datepicker限定可选时间范围实现方法
2016/09/28 Javascript
Vue.js结合bootstrap实现分页控件
2017/03/10 Javascript
JS实现的模仿QQ头像资料卡显示与隐藏效果
2017/04/07 Javascript
微信小程序实现换肤功能
2018/03/14 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
javascript实现blob加密视频源地址的方法
2019/08/08 Javascript
js实现双色球效果
2020/08/02 Javascript
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
python在linux中输出带颜色的文字的方法
2014/06/19 Python
python从入门到精通(DAY 1)
2015/12/20 Python
Python变量和数据类型详解
2017/02/15 Python
python+opencv实现动态物体追踪
2018/01/09 Python
Python发送http请求解析返回json的实例
2018/03/26 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
Python Opencv提取图片中某种颜色组成的图形的方法
2019/09/19 Python
Python基于进程池实现多进程过程解析
2020/04/30 Python
简单了解Django项目应用创建过程
2020/07/06 Python
pandas按条件筛选数据的实现
2021/02/20 Python
台湾生鲜宅配:大口市集
2017/10/14 全球购物
英国足球店:UK Soccer Shop
2017/11/19 全球购物
优秀护士获奖感言
2014/02/20 职场文书
《长江之歌》教学反思
2014/04/17 职场文书
应聘教师自荐书
2014/06/16 职场文书
2015年大学生村官工作总结
2015/04/21 职场文书
篮球赛新闻稿
2015/07/17 职场文书
《玩出了名堂》教学反思
2016/02/17 职场文书
Nginx的基本概念和原理
2022/03/21 Servers