浅谈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 相关文章推荐
基于Jquery制作的幻灯片图集效果打包下载
Feb 12 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
Sep 25 Javascript
SWFObject基本用法实例分析
Jul 20 Javascript
VUEJS实战之利用laypage插件实现分页(3)
Jun 13 Javascript
AngularJs Understanding the Controller Component
Sep 02 Javascript
jQuery使用getJSON方法获取json数据完整示例
Sep 13 Javascript
JQuery获取鼠标进入和离开容器的方向
Dec 29 Javascript
鼠标经过出现气泡框的简单实例
Mar 17 Javascript
node文件批量重命名的方法示例
Oct 23 Javascript
node.js博客项目开发手记
Mar 16 Javascript
JS实现从对象获取对象中单个键值的方法示例
Jun 05 Javascript
JavaScript实现移动小精灵的案例代码
Dec 12 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后台程序与Javascript的两种交互方式
2009/10/25 PHP
PHP学习笔记 IIS7下安装配置php环境
2012/10/29 PHP
PHP随机数 C扩展随机数
2016/05/04 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
2017/06/19 PHP
laravel5实现微信第三方登录功能
2018/12/06 PHP
Jquery工作常用实例 使用AJAX使网页进行异步更新
2011/07/26 Javascript
两种不同的方法实现js对checkbox进行全选和反选
2014/05/13 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
2017/05/12 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
bootstrap基本配置_动力节点Java学院整理
2017/07/14 Javascript
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
2018/10/26 jQuery
Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
2018/10/28 Javascript
微信小程序在其他页面监听globalData中值的变化
2019/07/15 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
python批量下载图片的三种方法
2013/04/22 Python
python实现简单点对点(p2p)聊天
2017/09/13 Python
python利用正则表达式搜索单词示例代码
2017/09/24 Python
Python爬虫实例扒取2345天气预报
2018/03/04 Python
对Python 文件夹遍历和文件查找的实例讲解
2018/04/26 Python
python django中8000端口被占用的解决
2019/12/17 Python
美国专注于健康商品的网站:eVitamins
2017/01/23 全球购物
什么是事务?为什么需要事务?
2012/01/09 面试题
客服文员岗位职责
2013/11/29 职场文书
大学生学业生涯规划
2014/01/05 职场文书
决心书标准格式
2014/03/11 职场文书
国庆宣传标语
2014/06/30 职场文书
创先争优活动承诺书
2014/08/30 职场文书
南京导游词
2015/02/03 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
2015年护士长个人工作总结
2015/04/24 职场文书
南阳市白酒市场的调查报告
2019/11/08 职场文书
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
动画电影《龙珠超 超级英雄》延期上映
2022/03/20 日漫
MySQL详细讲解变量variables的用法
2022/06/21 MySQL