>  기사  >  웹 프론트엔드  >  JavaScript 객체에 대한 자세한 설명

JavaScript 객체에 대한 자세한 설명

小云云
小云云원래의
2018-03-17 15:38:11948검색

1. 자바스크립트 객체 소개

1. 객체란 무엇인가요? 객체는 프로그램의 객체이며, 프로그램은 실제 세계를 설명하는 데 사용됩니다. 예를 들어, 모든 사람의 정보를 관리하는 프로그램을 작성하려면 여기에 모든 사람의 정보(키, 몸무게 등)가 있어야 합니다. 이 정보를 효율적으로 관리하려면 이 정보를 넣어야 합니다. 관리되는 컨테이너(객체)에 있습니다.

요약:

*은 현실의 무언가를 나타내며 프로그래밍에서 그 사물을 추상화한 것입니다(참조 데이터 유형인 데이터)

* 여러 데이터의 모음(캡슐화)

*은 컨테이너를 저장하는 데 사용됩니다. 다중 데이터

2. 왜 객체를 사용하나요?

여러 데이터의 통합 관리를 용이하게 합니다

3. 객체 구성(속성 + 메소드)

*속성:

*실제 사물의 상태 데이터를 나타냅니다

*속성 이름과 속성 값으로 구성 ​​

* 속성 이름 모두 문자열 유형이고 속성 값은 모든 유형입니다

*Method

*실제의 행동 데이터를 나타냅니다

*메소드는 특수 속성입니다(속성 값이 함수인 경우)

const p={
            name:'tom',//属性:属性值不是函数
            setName:function (name){//方法:属性值为函数------这个也是属性
                this.name=name;
            },
            'age':23,//属性名是字符串'age'或是‘setAge’
            'setAge':function(age){
                this.age=age;
            }
        }
        console.log(p.setName('jack'),p.name);//undefined "jack"
        p['setAge'](34);//这是函数
        console.log(p['age']);//34

4. 객체 데이터 내부에 어떻게 접근하나요?

* .속성 이름: 단순 코딩. 하지만 사용할 수 없는 경우도 있습니다

*['속성명']: 인코딩이 번거롭지만 범용적입니다(이 설정 매개변수를 사용할 때 접근도 이렇게 해야 한다는 점 참고하세요)

eg:b={ 'a':3}/b =['a']------a>는 변수가 아니라 문자열입니다

b[a]=3------>이 a는 변수입니다

5. ['속성 이름']은 언제 사용해야 하나요?
a. 속성 이름에 특수 문자가 있습니다(예: content-type)
b. 속성 이름이 불확실합니다(속성 이름은 변수입니다).

            var obj={};
            //给对象添加一个属性:'content-type':'text/json'
            //obj.content-type='text/json';//报错了,有横杆不是合法标识名
            obj['content-type']='text/json';
            console.log(obj['content-type']);

            //要对象添加一个属性,但是属性名不确定(不确定的东西要定义成变量)
            var propName='my name';
            var value='jack';
            //obj.propName=value;
            //console.log(obj)//obj={propName:'jack'}
//obj.propName不能用这个,因为想要的属性名是my name而不是propName,所以要用obj['propName']=value;
            obj[propName]=value;
            console.log(obj['propName'])
            console.log(obj)//obj={'my name':'jack'}

6. 클래스와 객체 간의 관계
객체는 클래스에서 생성됩니다. 그리고 객체는 클래스의 인스턴스입니다(예: 월병 및 월병 틀)

7. 객체가 특정 클래스
객체 인스턴스 유형

에 속하는지 확인합니다. Operation

(1). 객체 유형 object
생성 방법: 새 클래스 이름( ); //이 객체 생성 방법은 모든 유형에 공통됩니다.
예: var obj = new Object();
Object 유형의 객체를 생성하는 약식 방법: var obj = {};

(2) 속성 추가 또는 수정:
방법 1:
Object.Attribute 이름 = data;
방법 2:
개체 ["속성 이름"] = data; //괄호는 문자열을 저장하는 문자열 또는 변수여야 합니다.
(3) 검색
방법 1:
Object.Attribute 이름;
방법 2:
개체 ["속성 이름"];

(4). 속성 삭제:
개체 삭제. 속성 이름 //부울 값을 반환하며 true는 삭제가 성공했음을 의미합니다.
개체 삭제 " ];//부울 값을 반환합니다. true는 삭제가 성공했음을 의미합니다

(5). 특정 속성이 객체에 존재하는지 감지
Object.hasOwnProperty("속성 이름"); //존재하면 true를 반환하고, 그렇지 않으면 true를 반환합니다. return false

( 6) Object 유형의 객체에 키-값 쌍을 추가하는 두 번째 방법:
var obj = {속성 이름: 데이터, 속성 이름: 데이터, 속성 이름: 데이터...}; . Liezi

1 .console.log(a[obj1])는 얼마나 출력되나요?

var a={};
  var obj1={n:2};
   var obj2={n:3}
    a[obj1]=4;
a[obj2]=5;
console.log(a[obj1])//输出5 
// console.log(a)知道属性名是[object Object] ,通过这个想到对象的属性名都是字符串,对象如果转换字符串:是obj.toString(),这个是固定的方法,返回的[object Object] ,所以obj1,obj2返回是一样属性名[object
 Object] 。所以a[obj2]是对a[obj1]的覆盖

관련 권장 사항:


JavaScript 객체의 세 가지 속성은 무엇입니까

JavaScript 객체의 나머지 및 확산 속성을 변경하는 방법

JavaScript 객체

위 내용은 JavaScript 객체에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.