본문 바로가기

javascript23

[Javascript] 텍스트 클립보드 복사하기 코드

// Get the text to be copied const textToCopy = "Hello, world!"; // Create a temporary input element const tempInput = document.createElement("input"); tempInput.setAttribute("type", "text"); tempInput.setAttribute("value", textToCopy); document.body.appendChild(tempInput); // Select the text tempInput.select(); // Copy the text to the clipboard document.execCommand("copy"); // Remove the tempor.. 2023. 2. 19.

[Javascript] 두 배열 간에 교집합 구하기

1. filter 방법 이용 const array1 = [1, 2, 3, 4, 5]; const array2 = [3, 4, 5, 6, 7]; const intersection = array1.filter(x => array2.includes(x)); console.log(intersection); // [3, 4, 5] 2. set 객체 사용 const array1 = [1, 2, 3, 4, 5]; const array2 = [3, 4, 5, 6, 7]; const set1 = new Set(array1); const set2 = new Set(array2); const intersection = Array.from(new Set([...set1].filter(x => set2.has(x)))); co.. 2023. 2. 19.

[Javascript] 문자 날짜 정렬하기

예시 다음 객체가 api로 넘어왔다. 가장 최신순으로 정렬하려고 한다. 방법 attendanceScheduleList.sort(function (comp1, comp2) { if (comp1.start comp2.start) { return -1; } return 0; }); 2023. 1. 9.

[Javascript] 배열 1~9까지 만들기

console.log(Array.from({ length: 9 }, (v, i) => (v = i + 1))); // [1,2,3,4,5,6,7,8,9] 2022. 11. 20.

[Javascript] for문에서 let과 var의 동작 분석

개요 for문에서 i를 반복하면, i는 차례로 0,1,2,3,4가 된다. 그러면, for문 밖에서 i를 참조하면, 5가 출력될거다. 왜냐하면, var로 선언된 i는 전역 변수이기 때문이다. 👇 아래 코드처럼, for문이 전부 실행된 후에 setTimeout이 끝나서, 큐에서 콜스택으로 console.log(i) *5가 들어간다. 이미 반복문이 다 돌고난 후여서, var로 선언된 전역변수 i는 5이다. 그래서 아래처럼 전부 5가 응답되는 원리이다. 그래서 다시 원리를 알아보면, 호이스팅때문이다 ❌ -> 호이스팅 때문이 아니라, 스코프문제이다. 변수 선언 스코프문제임. var, let var는 함수 스코프임 let은 블록 스코프임 var는 함수 내부에 선언하면 밖에서 참조할 수 없다. var를 함수 외부에 .. 2022. 11. 3.

[Javascript] Array.prototype.fill()

const arr = Array(100).fill() console.log(arr); // [ undefined,undefined,undefined,undefined,undefined ...] console.log(arr.length); // 100 const arr = Array(10).fill('👍')// ['👍','👍','👍','👍','👍','👍','👍','👍','👍','👍'] 숫자만큼 1부터 숫자까지 배열 만들기 const arr2 = Array(10).fill().map((_, i) => i+ 1) console.log(arr2); // [1,2,3,4,5,6,7,8,9,10] 2022. 10. 9.

[Javascript] new Date 런타임에 따른 타임존

브라우저에서의 Date 객체 parse() 함수, getHour(), setHour() 등의 메소드들은 모두 클라이언트의 로컬 타임존 (정확히는 브라우저가 실행되는 운영체제에 설정된 타임존)에 영향을 받는다. 예를 들어 2015-10-12 12:00:00 같은 문자열은 사파리나 IE의 경우 NaN 을 반환하고, 크롬이나 파이어폭스의 경우 로컬 타임존의 값을 반환하며, 경우에 따라 다른 환경에서는 UTC 기준의 값을 반환하기도 한다. .000Z의 의미 크롬 브라우저 브라우저 런타임에서는 .000Z를 붙이지 않고 new Date()를 만들어야, 타임존 계산 없이 Date 객체를 만들 수 있다. 맥OS 한국 타임존 new Date('2022-08-04T04:00:33.000Z') =>Thu Aug 04 202.. 2022. 8. 19.

[Javascript ]new Date().getTime()

new Date().getTime() millisecond를 반환함. 시간 구하기 new Date().getTime() / 1000 = 초 new Date().getTime() / 1000 / 60 = 분 new Date().getTime() / 1000 / 60 / 60 = 시간 new Date().getTime() / 1000 / 60 / 60 / 24 = 일 2022. 6. 4.

[Javascript] try...catch throw 문법

의도적으로 에러를 발생시켜서 수행하려는 로직에 예외가 발생했을 때, 예외처리를 테스트할 수 있는 방법이다. throw + Error 객체 try { // 원래 코드 주석함. throw new Error('에러 메시지'); // 👈 } catch(err) { console.error(`[${err.name}] ${err.message}`); // 사용자에게 보여줄 에러 메시지를 추가할 수도 있다. } Nuxt는 vuex store action에서 api요청 함수를 만든다. action에 만든 함수를 vue 컴포넌트로 호출해서 사용한다. 이때, 에러처리 방법. Vue 컴포넌트 methods: { async 메서드() { try { await this.액션API함수({ groupNo }); } catch (e.. 2022. 4. 25.

브라우저 cookie javascript로 쓰는 방법

만료 시간이 되면, 브라우저 디스크에서 만료 시간이 된 쿠키가 자동으로 사라지게 하는 방법을 고민했습니다. expires가 아닌, max-age를 사용해야, 디스크에서 지워지는 것을 확인했습니다. expires옵션을 쿠키 생성할 때 빼도 정상적으로 동작하는 것도 확인했습니다. max-age만 들어가면 됩니다. max-age는 초단위로 입력하면 됩니다. 쿠키 값 변경 수정 덮어씌우기 이미 브라우저에 같은 도메인에 같은 패스에 동일한 쿠키명이 있는경우, 아래 처럼 실행하면, 기존에 있던 쿠키 'auth'는 그대로 있고, 같은 이름의 'auth'쿠키가 새로 생긴다. domain은 앞에 점이 붙은, .example.com이다. document.cookie = `auth=쿠키값;domain=example.com;.. 2022. 4. 20.