laboonly

Results 7 comments of laboonly

> 第24天 如何快速让一个数组乱序,写出来 ``` function outOfOrder(arr) { return arr.sort(function(){ return Math.random() < 0.5 ? 1 : -1 }) } console.log(outOfOrder([1,2,3,4,5])) ```

``` function deepCopy (obj) { var result; //引用类型分数组和对象分别递归 if (Object.prototype.toString.call(obj) == '[object Array]') { result = [] for (i = 0; i < obj.length; i++) { result[i] = deepCopy(obj[i]) }...

``` function judgeStr(s) { let str = s.toLocaleLowerCase().replace(/[^a-zA-Z0-9]/g,'') let strRe = str.split('').reverse().join(''); return str === strRe; } ```

> 第10天 简要描述下什么是回调函数并写一个例子出来 回调函数就是一个通过函数指针调用的函数。 如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。 回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。 function(callback,url) { let xhr = new XMLHttpRequest(); ... .... xhr.onreadystatechange = callback(); xhr.send(); }

``` function bind(f,o) { if (f.bind) return f.bind(o) else return function() { renturn f.apply(o,arguments); } } ```

``` const arr = [1,2,3,4,5,6,7,8] //调用数学方法 function max(arr) { return Math.max.apply(null,arr); } function min(arr) { return Math.min.apply(null,arr); } // 循环对比 function max2(arr) { let res = -Infinity; for(i of arr)...

> 第14天 什么是闭包?优缺点分别是什么? 函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起构成闭包(closure)。也就是说,闭包可以让你从内部函数访问外部函数作用域。在 JavaScript 中,每当函数被创建,就会在函数生成时生成闭包。