>  기사  >  웹 프론트엔드  >  자바스크립트 객체와 배열의 차이점은 무엇입니까

자바스크립트 객체와 배열의 차이점은 무엇입니까

青灯夜游
青灯夜游원래의
2021-06-22 15:15:442985검색

차이: 차이점: 1. 객체는 명명된 값을 포함하는 정렬되지 않은 컬렉션인 반면, 배열은 인코딩된 값을 포함하는 정렬된 컬렉션입니다. 2. 배열의 데이터에는 이름이 없고 아래 첨자만 있지만 개체의 데이터에는 이름을 지정해야 합니다.

자바스크립트 객체와 배열의 차이점은 무엇입니까

이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

JavaScript의 Object(객체)와 Array(배열)는 때로는 유사해 보이지만 두 가지 유형의 데이터 컬렉션입니다. 객체는 명명된 값을 포함하는 순서가 지정되지 않은 컬렉션인 반면, 배열은 인코딩된 값의 순서가 지정된 컬렉션을 포함합니다.

예제 1

다음 예에서는 객체와 배열을 사용하여 각각 1과 true라는 두 값을 저장합니다. 코드 구조는 다음과 같습니다.

var o = {  //对象
    x :1,  //该值命名为x
    y : true  //该值命名为y
}
var a = [  //数组
    1,  //该值隐含编码为0
    true  //该值隐含编码为1
]

객체의 저장 형태가 배열과 매우 유사하여 연관 배열이라고 부르지만, 진정한 의미의 배열은 아닙니다. 연관 배열은 값을 특정 문자열과 연관시킵니다. 실수 배열은 문자열과 연결되지 않지만 값 및 음수가 아닌 정수 첨자와 연결됩니다.

console.log(o["x"]);  //返回1,使用点语法存取属性
console.log(a[0]);  //返回1,使用中括号存取属性

점 구문을 사용하여 속성에 액세스할 때 속성 이름은 식별자입니다. 대괄호를 사용하여 속성에 액세스할 때 속성 이름은 문자열입니다.

예 2

점 연산자를 사용하여 객체 속성에 액세스하는 경우 속성 이름은 식별자로 표시됩니다. 대괄호를 사용하여 객체 속성에 액세스하면 속성 이름이 문자열로 표시됩니다. 런타임 중에 동적으로 생성됩니다.

var o = {
    p1 : 1,
    p2 : true
}
for (var i = 1; i < 3; i ++) {
    console.log(o["p" + i]);
}

연관 배열 방법을 통해 문자열 표현식으로 객체 속성에 액세스하는 것은 매우 유연합니다. 객체 속성이 많으면 객체 속성에 접근하기 위해 점 구문을 사용하는 것이 번거로울 것입니다. 또한 일부 특수한 경우에는 연관 배열만 사용하여 객체 속성에 액세스할 수 있습니다.

【관련 권장 사항: javascript 학습 튜토리얼

위 내용은 자바스크립트 객체와 배열의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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