Jak rozumiem, w JavaScript każdy obiekt ma prototype
i ujawnia pewne domyślne właściwości. Mam następujący kod, w którym próbuję ustawić właściwość Year dwóch obiektów przez prototype
. Ale oba połączenia zawodzą.Uzyskiwanie dostępu do prototypu obiektów JavaScript
Jak mogę przesłonić obiekt toLocalString()
dla dowolnego obiektu, jeśli nie mam dostępu do prototype
? Należy pamiętać, że poniższy kod służy do testowania właściwości prototype
, ale moim zamiarem jest przesłonięcie metody toLocalString()
.
var car = {
Make: 'Nissan',
Model: 'Altima'
};
car.Year = 2014;
alert(car.Year);
alert(car.prototype); // returns undefined
car.prototype.Year = 2014; // Javascript error
// --------------
function Car() {
this.Make = 'NISSAN';
this.Model = 'Atlanta';
}
var v = new Car();
v.prototype.Year = 2014; // JavaScript error
alert(v.prototype);
W dolnej przykład, powinno być 'Car.prototype.Year = 2014' - ustawiasz prototyp na funkcji obiektu - nie utworzonej instancji. – tymeJV
Masz na myśli 'toLocaleString()' zamiast 'toLocalString()' lub czy chcesz zaimplementować własną metodę 'toLocalString()'? – pasty
Proszę spojrzeć na [tę odpowiedź] (http://stackoverflow.com/a/26149216/1841194) –