Skip to content

Instantly share code, notes, and snippets.

@cevek
Created January 7, 2017 17:05
Show Gist options
  • Save cevek/2547875f8ef4fb2d72a02f0f3e3361bf to your computer and use it in GitHub Desktop.
Save cevek/2547875f8ef4fb2d72a02f0f3e3361bf to your computer and use it in GitHub Desktop.
function forIn(obj) {
// for(var i in obj){break;}
for (var key in obj) {
var val = obj[key];
// console.log(key, val);
}
}
function removeProp(key){
node.style[key] = null;
}
function setProp(key, value){
node.style[key] = value;
}
function rm(newStyles, oldStyles) {
for (var key2 in oldStyles) {
if (typeof newStyles[key2] === 'undefined') {
removeProp(key2);
}
}
}
var node = document.createElement('div');
function diff(ns, os) {
var c = 0, k;
for (k in os)c++;
for (k in ns) {
c--;
if (ns[k] !== os[k]) {
c--;
node.style[k] = ns[k];
}
}
if (c !== 0) {
for (k in os) {
if (typeof ns[k] === 'undefined') {
node.style[k] = null;
}
}
}
}
function objectKeys(obj) {
var keys = Object.keys(obj);
for (var i = 0; i < keys; i++) {
var key = keys[i];
var val = obj[key];
}
}
function getRandomObj(n) {
var i = n % 10;
return i==0?{a:1,b:'23'}:i==1?{b:'1',c:'ds'}:i==2?{c:3,d:'d'}:i==3?{d:'4',e:1}:i==4?{x:1,f:'1'}:i==5?{e:true,d:1}:i==6?{k:7,m:1}:i==7?{fh:5,f:4}:i==8?{sdg:3,x:4}:i==9?{sr:2,f:5}:{ut:5,yy:8};
}
var o = {a: 1, b: '1'};
delete o.a;
// forIn(o);
console.log(diff(getRandomObj(1), getRandomObj(1)));
function abc() {
console.time('perf');
for (var i = 0; i < 1e6; i++) {
// getRandomObj(i)
// forIn(getRandomObj(i));
// objectKeys(getRandomObj(i));
diff(getRandomObj(i), getRandomObj(i));
}
console.timeEnd('perf');
}
abc();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment