06 2019 档案

摘要:选择排序的基本思想就是从待排序列中选择出最小的,然后将被选出元素和序列的第一个元素互换位置(当前默认是升序排列),则互换完成后第一个元素就是整个序列的最小的元素,则一次选择排序结束。然后我们从剩下的子序列中选择出最小的,然后将该被选出来的元素和该子序列的第一个元素(即整个序列的第二个元素)互换位置, 阅读全文
posted @ 2019-06-17 20:54 不知不觉、 阅读(98) 评论(0) 推荐(0) 编辑
摘要:原理: 直接插入排序: 直接插入排序就是从待排序列中选出一个元素,插入到已经有序的元素之中,直到所有的元素都插入到有序序列中所有的元素就全部有序了。 通常的做法就是将第一个元素看做是有序的元素(即待排序列的第一个元素看做是有序序列),然后我们将第二个元素和有序序列(即第一个元素)作比较,按正确的序列 阅读全文
posted @ 2019-06-17 20:30 不知不觉、 阅读(195) 评论(0) 推荐(0) 编辑
摘要:一、新建一个log4js.js配置文件 二、新建log4Util.js 三、再app.js引入log4Util.js 阅读全文
posted @ 2019-06-11 19:15 不知不觉、 阅读(2533) 评论(0) 推荐(0) 编辑
摘要:作为一名前端工程师,必须搞懂JS中的prototype、__proto__与constructor属性,相信很多初学者对这些属性存在许多困惑,容易把它们混淆,本文旨在帮助大家理清它们之间的关系并彻底搞懂它们。这里说明一点,__proto__属性的两边是各由两个下划线构成(这里为了方便大家看清,在两下 阅读全文
posted @ 2019-06-11 18:57 不知不觉、 阅读(514) 评论(0) 推荐(0) 编辑
摘要:new 一个对象 1、创建一个空对象 2、让Person中的this指向obj,并执行Person的函数体 3、设置原型链,将obj的__proto__成员指向了Person函数对象的prototype成员对象 4、判断Person的返回值类型,如果是值类型,返回obj。如果是引用类型,就返回这个引 阅读全文
posted @ 2019-06-11 18:08 不知不觉、 阅读(2226) 评论(0) 推荐(0) 编辑
摘要:function deepClone (obj) { if (obj === null) { // 如果是null则直接返回 return obj; } let copy = Array.isArray(obj) ? [] : {}; for (let key in obj) { if (obj.hasOwnProperty(key)) { if (t... 阅读全文
posted @ 2019-06-11 16:30 不知不觉、 阅读(255) 评论(0) 推荐(0) 编辑
摘要:const util = require('util'); /** * 链表节点类 */ class Node { constructor (ele) { this.ele = ele; this.next = null; this.prev = null; } } /** * 链表类 */ class NodeList { constructor (... 阅读全文
posted @ 2019-06-11 15:35 不知不觉、 阅读(253) 评论(0) 推荐(0) 编辑