Deep Values Extract
by billybraga
JavaScript
if (typeof String.prototype.startsWith != 'function') {
String.prototype.startsWith = function (str) {
return this.slice(0, str.length) == str;
};
}
var getValues = function(obj, values) {
values = values || [];
switch (typeof obj) {
case "string":
case "number":
values.push(obj.toString());
break;
case "object":
var toString = obj.toString();
var isArray = $.isArray(obj);
for (var k in obj) {
if (isArray || Object.prototype.hasOwnProperty.call(obj, k)) {
getValues(obj[k], values);
}
}
//if(toString != "[object Object]")
// values.push(obj.toString());
}
return values.join(' ');
};
document.write(getValues([{
aItem1: {
p1: "v1",
p2: "v2",
p3: ["v3", {p4: {p5: "v4"}}]
}},
{
aItem2: new Date()}]));