浅谈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数组的扩展实现代码集合
Jun 01 Javascript
海量经典的jQuery插件集合
Jan 12 Javascript
javascript中用星号表示预录入内容的实现代码
Jan 08 Javascript
jQuery(非HTML5)可编辑表格实现代码
Dec 11 Javascript
javascript通过class来获取元素实现代码
Feb 20 Javascript
js获取客户端外网ip的简单实例
Nov 21 Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
Sep 20 Javascript
Bootstrap输入框组件使用详解
Jun 09 Javascript
基于vue的短信验证码倒计时demo
Sep 13 Javascript
javascript计算渐变颜色的实例
Sep 22 Javascript
Vue render函数实战之实现tabs选项卡组件
Apr 22 Javascript
Element Backtop回到顶部的具体使用
Jul 27 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数据库连接类~~做成一个分页类!
2006/11/25 PHP
PHP关联链接常用代码
2012/11/05 PHP
php并发对MYSQL造成压力的解决方法
2013/02/21 PHP
PHP5.3以上版本安装ZendOptimizer扩展
2015/03/27 PHP
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
面向对象继承实例(a如何继承b问题)(自写)
2013/07/01 Javascript
JavaScript设计模式之外观模式实例
2014/10/10 Javascript
浅谈jQuery中replace()方法
2015/05/13 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
2015/06/10 Javascript
AngularJS身份验证的方法
2016/02/17 Javascript
简单理解JavaScript中的封装与继承特性
2016/03/19 Javascript
JS模拟的Map类实现方法
2016/06/17 Javascript
jQuery特殊符号转义的实现
2016/11/30 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
2018/03/08 Javascript
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
简述pm2常用命令集合及配置文件说明
2019/05/30 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
javascript利用canvas实现鼠标拖拽功能
2020/07/23 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
python生成指定长度的随机数密码
2014/01/23 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
2017/07/06 Python
详解windows python3.7安装numpy问题的解决方法
2018/08/13 Python
python线程的几种创建方式详解
2019/08/29 Python
Python Excel vlookup函数实现过程解析
2020/06/22 Python
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
管理部部长岗位职责
2013/12/05 职场文书
市场安全管理制度
2014/01/26 职场文书
跟单业务员岗位职责
2014/03/08 职场文书
小学生作文评语
2014/04/18 职场文书
监察建议书格式
2014/05/19 职场文书
政审证明范文
2015/06/19 职场文书
采购员工作总结范文
2015/08/12 职场文书
MySQL 常见存储引擎的优劣
2021/06/02 MySQL