Jquery i nesne bazlı (OOP) programlama dilleri gibi kullanmak mümkün. Bunun için en temelinde class (sınıf) oluşturuyor olmanız ve bununla çalışıyor olmanız gerekli. Ama o konuya girmek istemiyorum, zira detaylı anlatılması gereken bir başlık. Bu sebeple obje oluşturmayı Javascript ile fonksiyon oluşturarak yapacağım, kopyalamayı ise Jquery ile. Öncelikle, diyelim ki "Cadde" adında bir class (sınıf) açtınız, dediğim gibi OOP un burdaki en basit hali fonksiyon oluşturmak olduğu için:
function Cadde(a, b) {
this.yer = a;
this.saat = b;
}
Sonra da bu fonksiyonu parametreler ile çağırıp bir değişkene atıyoruz:
var akaretler =new Cadde('kahve', 1400);
Bu şekilde "akaretler" adında yeni Cadde objesi oluşturmuş oluyoruz. Sonra da aşağıdaki satırlar ile klon/kopyalayabilirsiniz. İlk satır düz, ikinci satır derin klonlama için, derin klonlama iç içe olan öğeleri alarak kopyalar. Eğer derin kopyalama yapmayacaksanız, extend fonksiyonun ilk parametresini false yapmayın aşağıdaki gibi es geçin:
var yeniCadde = jQuery.extend({}, akaretler);
var yeniCadde = jQuery.extend(true, {}, akaretler);
Jquery deki clone fonksiyonu sadece Html in çıkartıldığı DOM (Document Object Model) öğelerini kopyalar, javascript objelerini kopyalamaz.