Однако, необходимо учитывать, что результат тестирования наследника и родителя быдет один и тот же. Поэтому, если необходимо отличить наследника от родителя, нужно тестировать объект на предмет причастности к наследнику.
Например, нам нужно проверить, что переменная является не массивом, а объектом (Array является наследником Object):
Пишем:
var a={a:1,b:2,c:3};
trace(a instanceof Object);
// true.
Всё отлично.var a=[1,2,3];
trace(a instanceof Object);
// true.
А это уже не приемлемо.Пробуем проверить на непричастность к Array:
var a={a:1,b:2,c:3};
trace(!(a instanceof Array));
Всё отлично.var a=[1,2,3];
trace(!(a instanceof Array));
// false.
Вот теперь всё верно.
Комментариев нет:
Отправить комментарий