模拟红绿灯(递归与队列)
摘要:模仿交通信号灯,最简单的处理方式不过是一个简单的递归 非常简单的一个功能,突然想到了队列的先进后出,蛮可以用队列的方式再升级一下,顺便巩固下队列的知识 创建队列 npm上其实是有现成的代码的,可以直接 npm install queue 定义好了队列,调用的时候有一个小技术点,就是当for遇到了se
阅读全文
线性表
摘要:线性表的顺序存储结构 在数据元素的非空有限集中,1).存在唯一的一个被称为“第一个”的数据元素,2).存在唯一的一个被称作“最后一个”的数据元素,3).除第一个之外,集合中的每个数据元素均只有一个前驱;4).除最后一个之外,集合中每个数据元素均只有一个后继。 线性表的顺序存储结构逻辑关系上相邻的两个
阅读全文
栈和队列
摘要:从数据结构的角度看栈和队列也是属于线性表,其特殊性在于栈和队列的基本操作是线性表操作的子集,他们是操作受限的线性表,因此,可称为限定性的数据结构。但,从数据类型角度看,他们是和线性表大不相同的两类重要的抽象数据类型。 栈栈(Stack)是先进后出原则,表尾进行插入或删除,因此,表尾端称为栈顶(top
阅读全文
树和二叉树
摘要:树形结构是一类重要的非线性数据结构 (线性数据结构: 线性表、栈、队列、双队列、数组、串 ; 非线性数据结构:二维数组、多维数组、广义表、树、图等) 树是一种数据结构 Tree = (D,R) 树树是N个结点的有限集,有且只有一个特定的称为根的结点,当节点数大于1时,其中每一个集合本身有是一棵树,称
阅读全文
nodejs中的垃圾回收机制
摘要:node是基于V8引擎开发的,V8的设计是为浏览器设计的,所以V8的内存相对较少,当然可以通过 node --max-old-space-size=1700 (单位是MB) 或 node --max-new-space-size=1024(单位是KB)来进行设置。V8的内存分代分为两代,一种是新生代
阅读全文
包装类
摘要:ECMAScript提供了3个特殊的引用类型:Boolean、Number、String var str = “abc”; //这类str是不会也不可能有属性的str.aaa = "aaa"; //这个时候是系统自动创建一个 new String("abc").aaa = ‘aaa’ 然后直接del
阅读全文
JavaScript作用域[[scope]]
摘要:[[scope]] : 隐式的属性 每个JavaScript函数都是一个对象,对象中有些属性可以访问,而有些属性是不可以访问的,这些属性仅供JavaScript引擎存取, [[scope]]就是其中一个。[[scope]]值得就是所谓的作用域,其中存储了运行期上下文的集合。 作用域链:[[scope
阅读全文
JavaScript构造函数原理
摘要:1.var obj={} plainObject 对象字面量/对象直接量2.构造函数创建 1)。系统自带的构造函数 Object() var obj=new Object(); 和 var obj = {} 没区别 原则上来说,使用字面量的形式要比new对象的形式要有效率 如下图 chrome上测试
阅读全文