JavaScript
草明
这个作者很懒,什么都没留下…
展开
-
Mocha + Chai 测试环境配置,支持 ES6 语法
下面是一个完整的 Mocha + Chai 测试环境配置,支持 ES6 语法。我们将使用 Babel 来转译 ES6 代码。原创 2024-06-12 14:52:55 · 436 阅读 · 0 评论 -
笔记: React 性能优化(Redux)
场景:父节点触发了更新,但是在子节点中只有部分(图中是绿色) 是真正需要更行并渲染, 其他的不需要。理想情况下是只渲染必要的节点,React默认是从最顶的绿色节点开始以下的所有子节点会被渲染。可以参考reactjs.org - Optimizing Performance使用shouldComponentUpdate或者PureComponent进行优化。如果组件继承了Component, 则可以通过shouldComponentUpdate方法处理不必要的渲染,返...原创 2020-12-28 17:13:42 · 331 阅读 · 0 评论 -
Nodejs - nginx 日志处理的时候对转义的处理
function decodeNginxLog(c) { let r = ''; for (let i = 0; i < c.length; i++) { if (c[i] === '\\' && c[i + 1] === 'x') { r += Buffer.from([c[i + 2], c[i + 3]].join(''), 'hex').toString...原创 2020-03-11 18:16:37 · 860 阅读 · 0 评论 -
剪头函数导致的死循环
看<<高性能 JavaScript>>这本书的时候,里面有个例子吸引了我,于是我写了个简化版本function save() { var task = [1, 2, 3, 4, 5]; setTimeout(() => { let e = task.shift(); console.log('e: ', e); if (task.l...原创 2018-06-01 13:27:30 · 226 阅读 · 0 评论 -
Safari 浏览器对日期处理的注意事项
Safari 浏览器对于 `new Date(dateString)` 中的 `dateString` 是有格式要求的。Safari支持的时间字符串有 `YYYY-MM-DDTHH:mm:ss`, `YYYY/MM/DD HH:mm:ss` 等在Safri不支持时间格式为 `YYYY-MM-DD HH:mm:ss`, `YYYY/MM/DDTHH:mm:ss` 等为了兼...原创 2019-03-06 16:48:38 · 1964 阅读 · 0 评论