浅谈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 相关文章推荐
详细讲解JS节点知识
Jan 31 Javascript
JavaScript中的cacheStorage使用详解
Jul 29 Javascript
浅谈jQuery中ajaxPrefilter的应用
Aug 01 Javascript
JavaScript编写一个简易购物车功能
Sep 17 Javascript
Vue Spa切换页面时更改标题的实例代码
Jul 15 Javascript
详解在express站点中使用ejs模板引擎
Sep 21 Javascript
vue-router实现组件间的跳转(参数传递)
Nov 07 Javascript
Vue2 SSR渲染根据不同页面修改 meta
Nov 20 Javascript
禁止弹窗中蒙层底部页面跟随滚动的几种方法
Dec 07 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
Apr 09 Javascript
微信小程序下拉刷新PullDownRefresh的使用方法
Nov 29 Javascript
vue 实现路由跳转时更改页面title
Nov 05 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遍历文件夹下的所有文件和子文件夹示例
2014/03/20 PHP
thinkPHP的表达式查询用法详解
2016/09/14 PHP
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
Prototype Number对象 学习
2009/07/19 Javascript
NodeJS与Mysql的交互示例代码
2013/08/18 NodeJs
javascript+html5实现绘制圆环的方法
2015/07/28 Javascript
Js 获取、判断浏览器版本信息的简单方法
2016/08/08 Javascript
XMLHttpRequest Level 2 使用指南
2016/08/26 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
2016/08/31 Javascript
Angular下H5上传图片的方法(可多张上传)
2017/01/09 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
JS代码屏蔽F12,右键,粘贴,复制,剪切,选中,操作实例
2019/09/17 Javascript
深入了解JS之作用域和闭包
2020/06/16 Javascript
解决vue项目运行npm run serve报错的问题
2020/10/26 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
Python使用Supervisor来管理进程的方法
2015/05/28 Python
老生常谈python之鸭子类和多态
2017/06/13 Python
Python实现的单向循环链表功能示例
2017/11/10 Python
python实现Virginia无密钥解密
2019/03/20 Python
Pytorch在NLP中的简单应用详解
2020/01/08 Python
基于python修改srt字幕的时间轴
2020/02/03 Python
python安装sklearn模块的方法详解
2020/11/28 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
送给他或她的礼物:FUN.com
2018/08/17 全球购物
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
高级电工工作职责
2013/11/21 职场文书
个人充满哲理的自我评价
2014/02/20 职场文书
生产车间标语
2014/06/11 职场文书
党员群众路线教育实践活动学习笔记
2014/11/05 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
2014预防青少年违法犯罪工作总结
2014/12/10 职场文书
团代会开幕词
2015/01/28 职场文书
房地产销售助理岗位职责
2015/04/14 职场文书
Windows Server 2016 配置 IIS 的详细步骤
2022/04/28 Servers