Последгий пример 4. дает true . Тоесть нет разницы в проверке строго и не строгого равенства.
Цитата:
|
a.indexOf(1) ищет число 1
|
Да что ты говоришь! А я думал он класс ищет... Понятное дело, что он ищет число, а не строку. Суть в том, что в ДАННОМ месте нет приведения типов из одного в другого , ведь равенство дается не строгое, а ==, а во втором случае с массиво а[0] есть. Какое ты имеешь право создавая четкие инструкции в одном месте пропускать приведение в другом нет? Сравни, еще раз говорю, с джавой , там таких мест неоднородных просто нет.
Как я считаю должно быть a.indexOf(1) == -1 // false, a.indexOf(1) === -1 // true - раз весь язык разрешает приведение типов, то и тут должно оно быть.
Щас проверять лень, но я думаю и такое пройдет идеально

Код AS3:
var v:Vector.<int> = new <int>[0,1,2];
function a(c:String):void { }
a(v[0]);
И да, проверил... прошло. А вектор в отличие от массива, у нас типизированный сука объект. О чем тут говорить то вообще?