How to Inspect Javascript Object
Posted
by
Madhan ayyasamy
on Mad Han RoR Tips
See other posts from Mad Han RoR Tips
or by Madhan ayyasamy
Published on 2010-11-24T05:54:00.000-08:00
Indexed on
2010/12/06
16:59 UTC
Read the original article
Hit count: 302
Javascripts
It shows you type and property name. If an object property can't be accessed, an error message will be shown.
Here the snippets for inspect javascript object.
{
var str = '', type, msg;
// Start Input Validations
// Don't touch, we start iterating at level zero if(level == null) level = 0;
// At least you want to show the first level
if(maxLevels == null) maxLevels = 1;
if(maxLevels < 1)
return '<font color="red">Error: Levels number must be > 0</font>';
// We start with a non null object
if(obj == null)
return '<font color="red">Error: Object <b>NULL</b></font>';
// End Input Validations
// Each Iteration must be indented
str += '<ul>';
// Start iterations for all objects in obj
for(property in obj)
{
try
{
// Show "property" and "type property"
type = typeof(obj[property]);
str += '<li>(' + type + ') ' + property +
( (obj[property]==null)?(': <b>null</b>'):('')) + '</li>';
// We keep iterating if this property is an Object, non null
// and we are inside the required number of levels if((type == 'object') && (obj[property] != null) && (level+1 < maxLevels))
str += inspect(obj[property], maxLevels, level+1);
}
catch(err)
{
// Is there some properties in obj we can't access? Print it red.
if(typeof(err) == 'string') msg = err;
else if(err.message) msg = err.message;
else if(err.description) msg = err.description;
else msg = 'Unknown';
str += '<li><font color="red">(Error) ' + property + ': ' + msg +'</font></li>';
}
}
// Close indent
str += '</ul>';
return str;
}
function inspect(obj [, maxLevels [, level]])
Input Vars
* obj: Object to inspect
* maxLevels: Optional. Number of levels you will inspect inside the object. Default MaxLevels=1
* level: RESERVED for internal use of the function
Return Value
HTML formatted string containing all values of inspected object obj.
© Mad Han RoR Tips or respective owner