js 요지의 구조 함수

2898 단어
//열거 대상
  var obj = {}
    obj.name = "bob";
    obj.age = "22";
    obj.sex = "boy";
    console.log(obj);
    for(var sum in obj){
       // console.log(sum);
    }

//구조 함수 sayName 고유 방법
   function Person(name){
        this.name = name;
        this.sayName = function(){
            console.log(this.name);
        }
    }
    var person1 = new Person("aaa");
    var person2 = new Person("bbb");
    console.log(person1.name); // aaa
    console.log(person2.name); // bbb
    person1.sayName(); // aaa
    person2.sayName(); // bbb

//각 함수마다 prototype 속성sayName1을 프로토타입 메서드로 사용
  function Person1(name){
        this.name = name;
    }
    Person1.prototype.sayName1 = function(){
        console.log(this.name);
    }
    var person1a = new Person1("aaa-v");
    var person2a = new Person1("bbb-v");
    console.log(person1a.name); // aaa-v
    console.log(person2a.name); // bbb-v
    person1a.sayName1(); // aaa-v
    person2a.sayName1(); // bbb-v

//원형 속성 감별
   function hasPrototypeProperty(name,object){
        return name in object && !object.hasOwnProperty(name);
    }
    var book = {
        title:"this is book!"
    }
    console.log(hasPrototypeProperty("title",book)); //false
    console.log(hasPrototypeProperty("hasOwnProperty",book)); //true

좋은 웹페이지 즐겨찾기