Вы пытаетесь выяснить, какой тип переменной в JavaScript? Если это то, что вам нужно, вы можете просто сравнить конструктор объекта с конструктором, который, по вашему мнению, его создал:
var array = new Array();
if(array.constructor == Array)
alert("Is an array");
else
alert("isn't an array");
Это на самом деле не лучший способ делать вещи в javascript. Javascript не имеет системы типов, подобной C #, которая гарантирует, что переменная будет иметь определенные члены, если она создана определенным конструктором, потому что javascript - это довольно динамические языки, и все, что объект получает от своего конструктора, может быть перезаписано во время выполнения.
Вместо этого действительно лучше использовать утку и спрашивать ваши объекты, что они могут сделать, а не то, чем они являются:
http://en.wikipedia.org/wiki/Duck_typing
if(typeof(array.push) != "undefined")
{
// do something with length
alert("can push items onto variable");
}