|
|
|||||
Регистрация: May 2000
Сообщений: 49
|
Дурацкий вопрос
И снова здраствуйте,
Стыдно спрашивать, но я оказывается не знаю как сделать копию объекта. function Book(name, price){ this.name = name; this.price = price; } book1 = new Book("Confederacy of Dunces", 19.95); book2 = book1 Мне нужно чтобы book2 был новым объестом со всеми свойствами book1. Если я делаю "book2 = book1", то при изменений свойств book2, меняются свойства book1. Заранее спасибо. |
|
|||||
Book2 = new Book(n,p);
А так не катит?
__________________
Учиться и, когда придет время, прикладывать усвоенное к делу - разве это не прекрасно! Беседовать с другом, приехавшим издалека, - разве это не радостно! Не быть по достоинству оцененным светом и не таить обиду - разве это не возвышенно! |
|
|||||
Регистрация: Mar 2002
Сообщений: 204
|
function Book(name, price){
this.name = name; this.price = price; this.duplicate=function(){ return (new Book(this.name,this.price)); }; } book1 = new Book("Confederacy of Dunces", 19.95); book2 = book1.duplicate();
__________________
--- 8< --- 8< --- 8< --- |
|
|||||
Регистрация: May 2000
Сообщений: 49
|
Огромное спасибо всем кто откликнулся.
Я сам порылся в описании ECMSA, но ничего не нашёл, может просто не умею искать. :-))) Хотя что такое наверняка должно быть. Вообщем я остановился на методе (duplicate, thnks DMN). Конечно это не универсально, но на данный момент лучше не вижу. С уваженим старина ALF |
|
|||||
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
а другого способа сделать копию объекта не предусмотрено... :(
то есть только созданием нового обекта и копированием в него всех свойств... |
Часовой пояс GMT +4, время: 19:37. |
|
« Предыдущая тема | Следующая тема » |
|
|