Как отличить массив от объекта
Есть переменная, в ней может быть либо массив, либо элемент DOM. Как узнать, что в ней? typeof в обоих случаях возвращает object.
|
|
function isArray(arg) { return Object.prototype.toString.call(arg) == "[object Array]"; } var array = [1, 2, 3]; var node = document.createElement("div"); alert(isArray(array)); alert(isArray(node)); А вообще лучше по свойствам отличать: if (arg.nodeType) { arg // — DOM-элемент } else if ("length" in arg) { arg // — NodeList или Array } |
Nekromancer, Octane, спасибо.
|
Часовой пояс GMT +3, время: 09:17. |