🐠 FrontEnd 38

[TIL] 자바스크립트로 URL 파라미터 사용과 URLSearchParams

window.location웹 브라우저의 현재 URL에 대한 정보를 제공하는 JavaScript의 내장 객체이다해당 객체는 현재 URL을 나타내는 여러 속성과 메소드를 가지고 있다 href현재 url 주소를 가져오기전체 url을 문자열로 반환한다 이때 프로토콜, 호스트 경로, 포트, 쿼리 스트링 등 모든 부분이 포함된다console.log(window.location.href);해당 주소로 이동window.location.href = "http://example.com"; protocol / host / hostname / port아래 코드를 가지고 설명하면http://example.com/page.html?q=123protocol http:, https:host : 호스트(도메인) + 포트 exampl..

2024. 5. 8.

[TIL] 24/04/30 Promise와 fetch

개념 공부를 할 때 가장 헷갈리는 비동기여태 눈치껏 사용하다가 제대로 사용해 보고 싶어서 시작한다,, 가보자고,,🔥Promise이해하고 보니 명쾌한 정의!비동기 작업을 처리하는 객체, 비동기 작업을 실행했지만, 결과를 반환하지 않은 객체 ( 왜냐? resolve, reject를 호출하지 않으면 영원히 pending 상태) const promise = new Promise((resolve, reject) => { if (작업이 성공적으로 완료됨) { resolve(결과값); // 성공적으로 완료되었으므로 resolve 호출 } else { reject(에러); // 작업이 실패했으므로 reject 호출 }});//딴짓//딴짓중.. //계속 다른 작업중.. promise .t..

2024. 4. 30.

넘치는 텍스트 줄이기(말 줄임표)

문제카드를 여러개 만들면서 따로 설정을 하지 않아서 긴 content의 길이에 맞춰 높이가 결정되고,그 card를 기준으로 다음 카드의 높이가 결정된다 그래서 카드가 같은 높이를 가지고, 카드를 벗어나는 글들은 ... (줄임) 표시를 하도록 수정하려한다text-overflow면 해결될 줄 알았는데 안됨! ㅠ아래는 위 화면의 html, css이다  Dune 설명글....movieContent { overflow: hidden; text-overflow: ellipsis; // 작동 안함 🥲} 말 줄임표 사용 방법을 2가지 찾았다1. text-overflow: ellipsis텍스트가 요소의 너비를 초과할 때 말 줄임표(...)를 사용한다 text-overflow: ellipsi..

2024. 4. 29.

객체 속성 안전 접근하는 옵셔널 체이닝/nullish 연산자

옵셔널 체이닝(?.) / 널 병합 연산자(??)옵셔널 체이닝과 널 병합 연산자(nullish)는 객체의 속성을 접근할 때 안전하게 접근하기 위해 사용된다 아래와 같은 객체가 있다면const user = { name: 'John', address: { city: 'New York', zipcode: '10001' }}; 1. 옵셔널 체이닝(?.)객체의 속성이 undefined/null 이라면 undefined 를 반환하고, 속성이 있다면 해당 속성에 접근한다const city = user.address?.city;console.log(city); // New Yorkconst contry = user.address?.contry;console.log(contry); // undefined ..

2024. 4. 29.

apply, call, bind을 사용하여 this 바인딩하기

this를 명시적으로 바꿔주는 메소드를 알아보자 apply, call은 유사 배열 객체에 배열 메소드를 사용하는 용도로 많이 쓴다ex) arguments, NodeList, HTMLCollections bind는 영구적으로 this를 바꾼 새로운 함수를 반환한다메소드 내부 중첩 함수, 콜백함수에서 this 불일치 문제를 해결하는 용도로 많이 쓴다 call, apply, bind 형태callfunc.call(thisArg[, arg1, arg2, ...args])apply와 같지만 두번째 인자에 ,로 구분된 리스트 형태로 전달한다 applyfunc.apply(thisArg [,argusArray])첫번째 인자로 this로 사용할 요소, 두번째 인자로 함수에 전달할 요소를 배열로 전달한다 (array = a..

2024. 4. 26.

[TIL] 24/04/24 이벤트 핸들러, 이벤트 객체, 이벤트 전파

이벤트 핸들러이벤트 발생 후, 호출될 함수를 브라우저에 호출을 위임한다이때 호출될 함수를 "이벤트 핸들러"브라우저에 이벤트 핸들러 호출을 위임하는 것을 "이벤트 핸들러 등록"  브라우저는 사용자의 이벤트를 감지할 수 있기 때문에, 개발자가 언제 이벤트가 발생할 지 모르는 이벤트에 직접 이벤트 핸들러를 호출하기 보다 브라우저에 이벤트 핸들러 호출을 위임하는 것이다. 이벤트 핸들러 등록 방법 3가지1.  HTML 이벤트 핸들러 어트리뷰트 👎HTML은 마크업만! 동적인 상호작용은 JS에서 작성하기 🔥on+이벤트타입 (onclick, onfocus, onmouseenter..)문을 할당 (함수 참조❌ ) = 어트리뷰트값으로 할당된 값은 암묵적으로 이벤트 핸들러의 함수 몸체하나의 이벤트 핸들러만 바인딩Even..

2024. 4. 24.