История изменений
Исправление x3al, (текущая версия) :
Понятно, ты просто не знаешь спецификацию.
В двух словах: Function — не сильно более специальный объект, чем Array или Error и не является отдельным типом точно так же, как Array и Error не являются ими. typeof не возвращает тип, и спецификация напрямую это говорит.
Ты не умеешь делать методы объекта, чтобы реализовать concat\forEach\map\etc, или не знаешь о геттерах, сеттерах, чтобы сделать length? Или что у тебя там не получается? Итератор? Пиши конкретнее.
var myArray = new myArray(1, 2, 3);
var extendedArray = [4, 5].concat(myArray);
До ES6 тупо нет способа реализовать myArray так, чтобы это работало (полифиллы/babel не помогут). Ну, кроме возврата настоящего Array из myArray, но тут будут другие недостатки.
Исходная версия x3al, :
Понятно, ты просто не знаешь спецификацию.
В двух словах: Function — не сильно более специальный объект, чем Array или Error и не является отдельным типом точно так же, как Array и Error не являются ими. typeof не возвращает тип, и спецификация напрямую это говорит.
Ты не умеешь делать методы объекта, чтобы реализовать concat\forEach\map\etc, или не знаешь о геттерах, сеттерах, чтобы сделать length? Или что у тебя там не получается? Итератор? Пиши конкретнее.
var myArray = new myArray(1, 2, 3);
var extendedArray = [4, 5].concat(myArray);
До ES6 тупо нет способа реализовать myArray так, чтобы это работало (полифиллы/babel не помогут).