Показать сообщение отдельно
  #390 (permalink)  
Старый 05.12.2013, 23:19
Профессор
Посмотреть профиль Найти все сообщения от Maxmaxmaximus3
 
Регистрация: 18.11.2013
Сообщений: 275

Сообщение от Shaci
Начнем с первой проверки: а если в другом фрейме объект был создан?
мне лень пилить реализацию Array.isArray я только для пикчи накатал это, а так спасибо)
nerv_, блин я для пикчи накатал по быстрому а этот касяк не заметил, isNaN же, так бы и поймал баг)

пофиксил

function likeArray(item) {
    return item && typeof item === "object" && item.length >= 0 && item.length === Math.floor(item.length)
}
function isArray(item) { return item instanceof Array || (likeArray(item) && item.constructor.name === 'Array' ) }
function isEmpty(item) { return !item || !item.length }
function isFunction(item) { return typeof item === 'function'}
function isBoolean(item) { return typeof item === 'boolean'}
function isNumber(item) { return !isNaN(item) && typeof item === 'number'}
function isString(item) { return typeof item === 'string'}
function isObject(item) { return typeof item === 'object'}
function isUndefined(item) { return item === void 0}
function isNull(item) { return item === null}

Последний раз редактировалось Maxmaxmaximus3, 05.12.2013 в 23:40.
Ответить с цитированием