Тема: JS: работа св-ва prototype
Помогите разобраться с prototype... никак не пойму как это работает. Написал такой код для проверки:
Object.prototype.prop = "test"; // опред. некоторое свойство в прототипе Object
var a = new Array(), b = new Enumerator(), c = new Object(), d = new Date(), e = 25, f = "test", g = true, h;
var myArr = [a, b, c, d, e, f, g, h];
for(k=0; k<myArr.length; k++)
{
try
{
myArr[k].prop;
WScript.Echo("Тип объекта: " + typeof(myArr[k]) + "\nЗначение св-ва prop: " + myArr[k].prop);
}
catch(err)
{
WScript.Echo("Тип объекта: " + typeof(myArr[k]) + "\nЗначение св-ва prop НЕ ОПРЕДЕЛЕНО");
}
}ожидал, что значение св-ва с именем prop будет прочитано для объектов, которые имеют тип Object,
а для объектов типа string, number и прочих оно не будет определено, но как оказалось не определено
только для переменной h, которая объявлена, но никакого конкретного значения (и сотв. типа) не имеет.
на что ссылается Object.prototype в данном примере?
как происходит, что JS при попытке прочитать св-во prop у числа (переменная e) берёт его из прототипа
для Object?

