function object(o) { // 객체를 매개변수로 받음 function F() {} // 임시 생성자 함수 만들고 F.prototype = o; // 생성자 함수의 프로토타입 객체를 매개변수로 받은 객체로 지정 return new F(); // 임시 생성자 함수를 기반으로한 새 객체를 반환 } // 공유객체 정의 var person = { name: "sin", friends: ["lee", "park"] }; var person1 = object(person); person1.name = "choi"; person1.friends.push("yoon"); var person2 = object(person); person2.name = "kim"; person2.friends.push("hong"); document.write(person.friends); // lee,park,yoon,hong