JS
moomin的小粉丝
姜饼的学习记录
展开
-
IIFE理解(function () { /*code*/ })()
函数声明在JS中只要是function开头,则认为是函数声明,而函数声明后面不能直接加()进行直接调用function a(){ /*code*/ }() //编译错误但是在function前加上一元运算符之后,却没有问题了 +function( $ ) { /* jquery code*/ })(window.jQuery);函数表达式通过函数表...原创 2019-07-19 12:18:40 · 158 阅读 · 0 评论 -
理解JS中的对象与构造函数
对象对象是一个包含相关数据和方法的集合(通常由一些变量和函数组成,我们称之为对象里面的属性和方法)//声明一个对象var person = { name : ['Bob', 'Smith'], age : 32, gender : 'male', interests : ['music', 'skiing'], greeting: function() { alert('Hi!...原创 2019-07-24 16:26:09 · 124 阅读 · 0 评论 -
理解闭包
背景:javascript中没有块级作用域的概念,只有函数拥有作用域。在下面的例子里,要实现累加,counter必须定义在autoadd函数之外,作为一个全局变量var counter=1;function autoadd(){ counter++; console.log(counter);}在上面这个累加函数中,变量counter仅仅作为一个计数器存在,定义为全...原创 2019-07-20 11:09:04 · 437 阅读 · 0 评论 -
理解原型与原型链
对象对象是一个包含相关数据和方法的集合(通常由一些变量和函数组成,我们称之为对象里面的属性和方法)//声明一个对象var person = { name : ['Bob', 'Smith'], age : 32, gender : 'male', interests : ['music', 'skiing'], greeting: function() { alert('Hi!...原创 2019-07-24 16:40:17 · 69 阅读 · 0 评论 -
理解JS异步&Promise
JS是一种单线程语言,这意味着一次只能处理一个事件。其优点是:当前执行的任务永远不会被抢占。但其缺点在于当一个消息需要太长时间才能处理完毕时,Web应用就无法处理用户的交互,例如点击或滚动。浏览器用“程序需要过长时间运行”的对话框来缓解这个问题。同步对其而言意味着必须处理完一个事件才能去处理下一个,而如果一个事件耗时过长,则可能造成阻塞。为了防止长时间的阻塞,JS设计出了一种异步方式,但由于JS...原创 2019-07-26 14:42:45 · 431 阅读 · 0 评论