Skip to content

Instantly share code, notes, and snippets.

View jokemmy's full-sized avatar
😏
Working for my life!

Zhenyu.Xu jokemmy

😏
Working for my life!
View GitHub Profile
@jokemmy
jokemmy / IconSVG-fixed.jsx
Last active August 10, 2017 03:40
Use SVG icon with svg-sprite-loader
// 现用方案
function IconSVG({ xlinkHref, className, ...props }) {
const clsName = className ? `${styles.iconSVG} ${className}` : styles.iconSVG;
return (
<svg aria-hidden="true" className={clsName} {...props}>
{/**
* 会出现 bug 的场景:使用 browserHistory,并且页面内使用 href 属性非空的 <base /> 标签
* 如果不加 pathname,在火狐或者某国产双核浏览器中以及安卓版微信浏览器中图标不显示
*/}
@jokemmy
jokemmy / npm.sh
Created August 10, 2017 03:42
taobao mirror
npm set registry https://registry.npm.taobao.org # 注册模块镜像
npm set disturl https://npm.taobao.org/dist # node-gyp 编译依赖的 node 源码镜像
## 以下选择添加
npm set chromedriver_cdnurl http://cdn.npm.taobao.org/dist/chromedriver # chromedriver 二进制包镜像
npm set operadriver_cdnurl http://cdn.npm.taobao.org/dist/operadriver # operadriver 二进制包镜像
npm set phantomjs_cdnurl http://cdn.npm.taobao.org/dist/phantomjs # phantomjs 二进制包镜像
npm set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass # node-sass 二进制包镜像
@jokemmy
jokemmy / requestAnimFrame-old.js
Last active September 1, 2017 01:40
requestAnimFrame shim for ssr and csr
// rAF-shim for ssr and csr
export const requestAnimationFrame = ( function() {
try {
let lastTime = 0;
window.requestAnimationFrame =
window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function( callback ) {
@jokemmy
jokemmy / browser.js
Last active August 18, 2017 08:56
simple browser detect
export const browser = ( function() {
try {
const userAgent = navigator.userAgent.toLowerCase();
const makeArray = ( some ) => {
return !Array.isArray( some ) ? [some] : some;
};
const regexps = {
ie: [ /rv:([\d.]+)\) like gecko/, /msie ([\d.]+)/ ],
firefox: /firefox\/([\d.]+)/,
@jokemmy
jokemmy / beacon-api.md
Last active August 28, 2017 01:55
Beacon API

Beacon API是W3C仍在草案阶段的一项新API,这个API主要用于发送不需要服务器回应的HTTP请求或强制浏览器发送一个请求。

这样说可能有点绕,考虑以下情景:

window.addEventListener('unload', logData, false);

function logData() {
    var client = new XMLHttpRequest();
 client you can find out more.open("POST", "/log", true);
很实用的编程英语词库,共收录一千五百余条词汇。
第一部分:
application 应用程式 应用、应用程序
application framework 应用程式框架、应用框架 应用程序框架
architecture 架构、系统架构 体系结构
argument 引数(传给函式的值)。叁见 parameter 叁数、实质叁数、实叁、自变量
array 阵列 数组
arrow operator arrow(箭头)运算子 箭头操作符
@jokemmy
jokemmy / 物理学术语对照.doc
Created August 28, 2017 06:45
物理学术语对照
Ⅰ、测量(measurement) 
物理学physics 
误差error 
游码rider 
测量measure (vt.) 
实验experiment 
温度temperature 
长度length 
实验室laboratory 
摄氏度degree centigrade 
@jokemmy
jokemmy / performance.now&Date.now.md
Last active August 28, 2017 15:11
performance.now() vs Date.now()

Date.now()

returns the number of milliseconds elapsed since 1 January 1970 00:00:00 UTC

performance.now()

returns the number of milliseconds/microseconds elapsed since an arbitrary epoch

Basically, performance.now() should only be used when you want to measure the relative distance between two time points, not their "absolute" position in time.

@jokemmy
jokemmy / getEntries.js
Last active August 29, 2017 01:48
performance 对象属性的详细描述
// 使用performance.getEntries() 获取所有资源请求的时间数据
// 这个函数返回的将是一个数组,包含了页面中所有的 HTTP 请求,这里拿第一个请求 window.performance.getEntries()[0] 举例。 注意 HTTP 请求有可能命中本地缓存,所以请求响应的间隔将非常短 可以看到,与 performance.timing 对比: 没有与 DOM 相关的属性:
// navigationStart
// unloadEventStart
// unloadEventEnd
// domLoading
// domInteractive
// domContentLoadedEventStart
// domContentLoadedEventEnd
@jokemmy
jokemmy / 优化一.md
Last active June 26, 2021 10:07
摘录一些优化经验

优化循环

如果现在有个一个data[]数组,需要对其进行遍历,应当怎么做?最简单的代码是:

for (var i = 0; i < data.length; i++) {
    //do someting
}