[JS, Jquery] 요소의 속성, 프로퍼티 값

2023. 3. 7. 00:06·Frontend/JavaScript & Jquery

JQuery에서

attr() vs .prop() 차이점

✅ attr()

  • .attr()은 HTML 요소의 속성 값을 가져오거나 설정하는 데 사용
    이미지의 src 속성값을 가져오거나 설정할 때 사용

✅  prop()

  • .prop()은 HTML 요소의 프로퍼티 값을 가져오거나 설정하는 데 사용
    <input> 요소의 checked 프로퍼티 값을 가져오거나 설정할 때 사용
💡 대부분의 경우 두 메소드 중 어느 것을 사용해도 상관 없음, 그러나 .prop()을 사용하는 것이 더 안정적

 

속성값과 프로퍼티 값의 차이점

1. 속성값은 HTML 문서에서 태그에 지정된 속성

예를 들어, <a href="http://example.com"> 에서

href는 속성 -> 이 속성은 HTML 문서에 명시되어 있으며,

HTML 요소가 DOM에 로드될 때 속성 값이 요소의 속성 노드(attribute node)로 추가됨

// 요소의 속성 값 가져오는 방법
var element = document.querySelector('a');
var href = element.getAttribute('href');

// 요소의 속성 값을 설정하는 방법
element.setAttribute('href', 'http://example.com');

 

2. HTML 요소의 프로퍼티는 HTML 요소 자체의 속성이 아니라, 해당 요소를 나타내는 JavaScript 객체의 속성(property)

<input> 요소의 value 프로퍼티는 사용자가 입력한 값을 나타냄.

이 값은 HTML 문서에 명시되어 있지 않으며,

요소가 DOM에 로드될 때는 없음. 대신, 사용자가 값을 입력하면 JavaScript 객체에 속성으로 추가된다.

// 요소의 프로퍼티 값을 가져오는 방법
var element = document.querySelector('input[type="checkbox"]');
var checked = element.checked;

// 요소의 프로퍼티 값을 설정하는 방법
element.checked = true;
// select 요소 가져오기
var selectElement = document.getElementById('mySelect');

// 선택된 옵션의 인덱스 가져오기
var selectedIndex = selectElement.selectedIndex;

// 선택된 옵션의 값을 가져오기
var selectedValue = selectElement.value;

 

반응형

'Frontend > JavaScript & Jquery' 카테고리의 다른 글

FormData 사용하기  (1) 2023.12.06
이벤트 버블링과 캡쳐링 이해하기  (1) 2023.11.25
[JS 디자인패턴] 전략패턴 (Strategy Pattern)  (1) 2023.03.01
[JS, Jquery] 체크박스 script  (0) 2023.02.28
Element.insertAdjacentHTML()  (2) 2022.12.25
'Frontend/JavaScript & Jquery' 카테고리의 다른 글
  • FormData 사용하기
  • 이벤트 버블링과 캡쳐링 이해하기
  • [JS 디자인패턴] 전략패턴 (Strategy Pattern)
  • [JS, Jquery] 체크박스 script
전예방
전예방
  • 전예방
    예방이의 개발일기
    전예방
  • 전체
    오늘
    어제
    • All (125)
      • Info & Tip (2)
      • 유용한 사이트들 (5)
      • Mark Up & StyleSheet (23)
        • HTML (6)
        • CSS & SCSS (10)
        • 반응형 (6)
      • Frontend (66)
        • 전체 (10)
        • JavaScript & Jquery (18)
        • TypeScript (0)
        • React (26)
        • Next.js (3)
        • 성능최적화 (2)
        • 웹접근성 (2)
      • Backend (13)
        • Python (1)
        • JAVA (2)
        • node.js (0)
        • PHP (7)
        • 패키지매니저 (3)
      • Markdown (0)
      • SCM (1)
        • Git&Github (1)
        • SVN (0)
      • IDE (4)
        • VSCode (2)
        • IntelliJ (1)
        • Ecplise (1)
      • 취미생활 (3)
      • 정보처리기사 (2)
      • 코딩자율학습단 (5)
        • 12기 (파이썬) (5)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

    • velog
    • github
  • 공지사항

  • 인기 글

  • 태그

    php
    Python
    NPM
    Chart.js
    파이썬
    swiper.js
    frontend
    나도코딩
    관리자 페이지
    반응형
    TypeScript
    CSS
    React Swiper
    Admin
    yarn berry
    회원가입
    리액트
    react
    코딩자율학습단
    코딩자율학습
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.3
전예방
[JS, Jquery] 요소의 속성, 프로퍼티 값
상단으로

티스토리툴바