02 2021 档案
摘要:参考文章:https://segmentfault.com/a/1190000016708006 原型链继承 子类的原型为父类的一个实例对象。 function Person(name) { this.name = name } Person.prototype.setAge = function
阅读全文
摘要:数组是有序数据的集合,对象是无序数据的集合。 数组的数据没有名称'name',对象的数据有名称'name'。 如何区分数组与对象,可看判断数组的几种方法
阅读全文
摘要:冒泡 function bubbleSort(arr) { var len = arr.length for (var i = 0; i < len; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j + 1]) {
阅读全文
摘要:数组乱序 实现一个数组乱序,每一个元素出现在每一个位置的概率是平均的 function noSort(arr) { const len = arr.length for (let i = 0; i < len; i++) { const random = Math.random() * (len -
阅读全文
摘要:for语句 支持中断,支持异步 let str = ''; for (let i = 0; i < 9; i++) { str = str + i; } console.log(str); //'012345678' 中断示例 var i = 0; for (var i = 0; ; i++) {
阅读全文
摘要:1、在严格模式中一部分字符变成了保留的关键字。这些字符包括implements, interface, let, package, private, protected, public, static和yield。在严格模式下,不能再用这些名字作为变量名或者形参名。 2、禁止使用with语句 3、创
阅读全文
摘要:宏任务:setTimeout/setImmediate 微任务:Promise 浏览器: 执行一个宏任务,执行所有微任务 node:先执行所有宏任务,再执行微任务 function test() { console.log('start') setTimeout(() => { console.lo
阅读全文
摘要:function objectFactory(...args) { //创建实例对象 let obj = {} //构造函数取第一个参数 let constructor = args.shift() //实例对象的__proto__属性与构造函数的prototype相同 obj.__proto__
阅读全文
摘要:ES6引入rest参数,形式为...变量名,用于获取函数多余参数。 语法: function foo(a, b, ...args) { // ... } rest参数只能作为最后一个参数,否则会报错 function foo(a, b, ...args, c) { console.log(args)
阅读全文
摘要:防抖(debounce) 在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时 function debounce(func, delay) { let timer = null return function (...args) { if (timer) { clearTimeout(
阅读全文
摘要:三者的对比 call、apply与bind都是用来改变this指向的。 call与apply返回结果为函数调用结果,bind返回结果为新的函数,还需要重新调用 let obj = { age: 18, getAge: function () { return this.age } } let obj
阅读全文
摘要:instanceof 原型链查找 const arr1 = [1, 2, 3] const obj = { a: 1 } console.log(arr1 instanceof Array) //true console.log(obj instanceof Array) //false Array
阅读全文
摘要:对于Object,==与 是没有区别的,都是对引用地址进行比较 function checkAge(data) { if (data { age: 18 }) { console.log(1) } else if (data == { age: 18 }) { console.log(2) } el
阅读全文
摘要:函数中未定义的变量会向外层作用域进行查找,外层作用域中没有会继续向再外层查找,直到找到变量定义或者全局作用域,形成的作用域套作用域即为作用域链 面试题 var x = 10; function a(y) { var x = 20; return b(y); } function b(y) { ret
阅读全文
摘要:推荐阅读 https://www.cnblogs.com/wangfupeng1988/p/3977924.html 每个函数都有一个protptype属性 每个对象都有一个__proto__属性 对象的__proto__属性指向构造函数的prototype属性 面试题 Function.proto
阅读全文

浙公网安备 33010602011771号