随笔分类 - javascript
摘要:在ES6之前,javascript只有全局作用域和函数作用域。所谓作用域就是一个变量定义并能够被访问到的范围。也就是说如果一个变量定义在全局(window)上,那么在任何地方都能访问到这个变量,如果这个变量定义在函数内部,那么就只能在函数内部访问到这个变量。 全局作用域只要页面没关闭就会一直存在,而
阅读全文
摘要:本文参考书籍:《javascript设计模式》、《javascript设计模式与开发实践》 发布-订阅模式简介 发布-订阅模式又称为观察者模式。既然是观察者模式,那么就存在两个角色:观察者和被观察者,也被称为发布者和订阅者。该模式描述的是对象及其行为和状态之间的关系。在javascript中的实质就
阅读全文
摘要:在js中,有四种用于检测数据类型的方式,分别是: typeof 用来检测数据类型的运算符 instanceof 检测一个实例是否属于某个类 constructor 构造函数 Object.prototype.toString.call() 原型链上的Object对象的toString方法 下面我们就
阅读全文
摘要:既然今天要谈的是javascript的事件循环机制,要理解事件循环,首先要知道事件循环是什么。 我们先从一个例子来看一下javascript的执行顺序。 怎么样,是不是和自己在心里运行的结果差了一万八千里呢。如果是的话,请耐心看完后面的内容,让你彻底弄明白javascript的事件循环机制。 单线程
阅读全文
摘要:我们都知道JavaScript是一门弱类型(或称动态类型)的语言,即变量的类型是不确定的。 上面的代码中,变量num起初是一个数值,后来又变成一个字符串。变量类型完全由当前值决定。这种类型就叫弱类型。 我们知道,在编程语言中,数据本身和运算之间都是有类型的。 在强类型的编程语言中,不同类型的变量是不
阅读全文
摘要:我们都知道javascript是解释型语言,执行的特点呢是编译一行,执行一行。按照这个思路有时候我们在运行代码时会有一些令人费解的现象出现。下面我们一起来执行下面三段代码。 运行上面三段代码可以得出结果分别为: 123. 和 a is not defined. 和 undefined. 按理说第三个
阅读全文
摘要:1、Ajax: async javascript and xml 异步的JS和XML AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如
阅读全文