Edited at

オブジェクトのプロパティ名でループする

Object.keys().forEach ... とかって、毎回書くのちょっとだけ面倒ではないのだろうかと思いました。

const objectKeyValueForEach = (obj, func) => {

Object.keys(obj).forEach((key, index, array) => {
func(key, obj[key], index, array);
});
}

var object1 = {
value1: 'abc',
value2: 123,
obj3: {
value: 'val1'
}
};

objectKeyValueForEach(object1, (key, value) => {
console.log(key + ' ' + value);
});

//実行結果

value1 abc
value2 123
obj3 [object Object]

参考

[JavaScript] オブジェクトをループでまわす - Qiita

https://qiita.com/phi/items/98975e1bb4995c1f1bcf