立即执行函数: 1.声明一个匿名函数 2.马上调用这个匿名函数 (function(){alert("匿名函数")})() 作用: 创建一个独立的作用域,这个作用域里的变量不会被外面访问到,避免变量污染 经典面试题: var liList = ul.getElementsByTagName('li' ...
分类:
其他好文 时间:
2020-03-18 11:29:55
阅读次数:
63
概念 ? 什么是模块, 一个模块是一块具有独立功能的代码, 可以是一个函数, 一个对象,甚至是一个字符串或数字,通常存储为一个单独的j s文件。 为什么需要模块化? 过去,j s很难编写大型应用, 因为有以下两个问题: 1. 全局变量污染 2. 难以管理的依赖关系 这两个问题导致j s无法进行精细的 ...
分类:
其他好文 时间:
2020-02-13 21:20:39
阅读次数:
104
//命名空间 //利用闭包防止变量污染 1 var name = 'bcd'; 2 var init = (function () { 3 var name = 'abc'; 4 function callName() { 5 console.log(name) 6 } 7 return funct ...
分类:
其他好文 时间:
2020-01-22 20:06:04
阅读次数:
98
立即执行函数表达式 立即执行函数表达式,大部分人也称为自执行函数。 自执行函数的写法 匿名函数 具名函数 自执行函数的传参 返回值 自执行函数也可以传递函数作为参数 为什么要使用立即执行函数表达式 有些时候我们要实现需求,为了实现这些业务逻辑,为了不让变量污染全局环境,定义了函数,但是这些函数,却不 ...
分类:
其他好文 时间:
2019-12-29 12:55:16
阅读次数:
78
定义全局变量3种方式: 在任何函数外卖呢直接执行var语句 var f = 'value' 直接添加一个属性到全局对象上.(全局对象是所有全局变量的容器.在web浏览器中,全局对象为window) window.f = 'value' 直接使用未经声明的变量,以这种方式是定义的全局变量被称为隐式的全 ...
分类:
其他好文 时间:
2019-12-19 19:28:19
阅读次数:
82
这几天面试上几次碰上这道经典的题目,特地从头到尾来分析一次答案,这道题的经典之处在于它综合考察了面试者的JavaScript的综合能力,包含了变量定义提升、this指针指向、运算符优先级、原型、继承、全局变量污染、对象属性及原型属性优先级等知识,此题在网上也有部分相关的解释,当然我觉得有部分解释还欠... ...
分类:
编程语言 时间:
2019-12-12 15:11:02
阅读次数:
95
error:The template root requires exactly one element. 解决办法:Vue只允许模板里存在一个根节点 组件化的vue里的data为什么要用data函数,用return语句? 答:项目里用到data采取函数式的方法,主要是因为如果用官网定义的data对 ...
分类:
其他好文 时间:
2019-10-02 12:19:31
阅读次数:
111
模块化(切记:学习思想) 如果不用模块化编写代码,那么会具有以下问题: 代码杂乱无章,没有条理性,不便于维护,不便于复用 很多代码重复、逻辑重复 全局变量污染 不方便保护私有数据(闭包) 模块化的基本实现:闭包的自调用函数 AMD模块化 -->requireJS AMD:async module d ...
分类:
编程语言 时间:
2019-08-29 11:44:02
阅读次数:
123
一、匿名函数 1、匿名函数 没有名字的函数即称为匿名函数。 2、使用方法 a、将匿名函数赋值给一个变量,这样就可以通过变量进行调用 b、匿名函数自调用 3、关于自执行函数(匿名函数自调用)的作用:防止全局变量污染。 Demo: 二、自调用函数 匿名函数不能通过直接调用来执行,因此可以通过匿名函数的自 ...
分类:
编程语言 时间:
2019-08-11 11:14:27
阅读次数:
98
闭包主要是为了解决局部变量无法长久的保存,而全局变量可能造成变量污染 垃圾回收机制 闭包的产生是在嵌套函数定义执行完时就产生了(不是在调用的时候) 闭包的死亡f=null 小闭包: (function(){})() ...
分类:
其他好文 时间:
2019-07-22 23:55:04
阅读次数:
197