MrZ
MrZ
> ``` > .css { > -webkit-transform-style: preserve-3d; > -webkit-backface-visibility: hidden; > -webkit-perspective: 1000; > } > ```
> 利用运算符优先级和0* > `b = a + 0 * (a = b);` > 利用执行顺序 > > ```js > a = a + b; > b = a - b; >...
function outOfOrder(arr) { return arr.sort(function(){ return Math.random() < 0.5 ? 1 : -1 }) } console.log(outOfOrder([1,2,3,4,5]))
> 我比较喜欢使用原生的方法,足够简单,而且可以解决大多数的深拷贝。 > > ``` > var obj1={ > name: '张三', > age:14, > friend:['小红','小白'], > parents:{ > mother:{name: '李岚',age:34}, > father:{name: '张武',age:35} > } > } > var obj2...
> Ajax 只是一套异步发网络请求然后更新页面的实践方案,Flash 是一个浏览器插件,但提供的是相对完整的运行时平台。Flash 被移动端抛弃了,连亲娘都不要它了,9102年了都。
> ```js > const a = new Object() // 创建, 不推荐 > const b = {} // 赋值, 性能比a要好 > const c = Object.create() // 继承创建, Object.create(null) 很多框架都有用来做性能优化 > ```
/** * @param {string} s * @return {boolean} */ var isPalindrome = function(s) { if (s.length === 1) return true const str = s.replace(/[^a-zA-Z0-9]/g, "").toLowerCase() const strReverse = str.split('').reverse().join('') return...
function interchange(x) { return +!x; }
arguments并不是一个数组, 但是它有length属性以及可以以下标的形式取值
回调是把一个函数作为参数传递给另一个函数,当该函数满足某个条件时触发该参数函数。 主要用于异步操作 例如网络请求 防止页面同步代码阻塞导致渲染线程停止 function longTask(callback,timeout) { setTimeout(callback,timeout) } longTask(()=>{console.log("回调任务被执行了");},2000); console.log("我是同步代码 不会阻塞我");