let person = new Object();
person.name = "Lucy";;
person.sayName = function(){
console.log(this.name)
}
let person = {
name: "Lucy",
sayName(){
console.log(this.name)
}
}
let person1 = Object.create(person)
class Person {
constructor(name){
this.name = name;
}
sayName(){
console.log(this.name)
}
}
const person2 = new Person("类声明")
person2.sayName()
let Person = class{
constructor(name) {
this.name = name;
}
sayName(){
console.log(this.name)
}
}
const person3 = new Person("类表达式")
person3.sayName()
function createPersonFactory(name){
let o = new Object();
o.name = name;
o.sayName = funciton(){
console.log(this.name)
};
return 0;
}
let person4 = createPersonFactory("Lucy");
let person5 = createPersonFactory("Joe");
function Person(name){
this.name = name;
this.sayName = function(){
console.log(this.name)
}
}
let person6 = new Person("Lucy");
let person7 = new Person("Joe");
person6.sayName();
person7.sayName();
function newOperator(Constructor, ...args) {
let thisValue = Object.create(Constructor.prototype);
let result = Constructor.apply(thisValue, args);
return typeof result === 'object' && result !== null ? restult : thisValue;
}
function Person(){};
Person.prototype.name = "Lucy";
Person.prototype.sayName = function() {
console.log(this.name);
}
let person8 = new Person();
person8.sayName();
let person0 = new Person();
person2.sayName();
function Person(name){
this.name = name;
}
Person.prototype = {
constructor: Person,
sayName: function() {
console.log(this.name)
}
};