자바스크립트 Set 설명
·
개발/JavaScript
자바스크립트의 Set() 은 고유한 값만을 가진 새로운 객체를 생성하는 데 사용합니다. 모든 유형의 값들을 저장할 수 있기 때문에, NaN과 undefined 또한 저장할 수 있습니다. 예시를 통해, 사용 방법을 살펴보도록 하겠습니다. 이번 예시에서는 set 메소드를 사옹하여 배열 내 중복 요소들을 제거해 보도록 하겠습니다. const numbers = [1, 1, 1, 2, 3, 4, 4, 5, 6, 6, 7, 8, 9, 10, 10] [...new Set(numbers)]; // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 추가적으로 Set()을 통해 배열 내 중복 요소들을 제거한 다음, 요소를 포함하고 있는지 확인해볼 수 있습니다. 다음과 같이 Set.prototype.has(value..
자바스크립트 Promise, async, await 정리
·
개발/JavaScript
1. Promise Promise 생성자 함수는 비동기 요청을 처리하는 방법 중 하나인데요. 실행은 되었지만 결과를 아직 반환하지 않은 객체를 의미합니다. 비동기 처리를 수행할 콜백 함수를 인수로 받습니다. 콜백 함수는 resolve와 reject 함수를 인수로 받습니다. 성공 또는 실패 하나의 결과만 반환됩니다. const promise = new Promise((reslove, rejcet) => { if (/*비동기 처리 성공*/{ resolve('value'); } else { /*비동기 처리 실패*/ reject(new Error("...")); } }); 2. async/await async와 await는 프로미스를 보다 쉽게 구현하는 방법입니다. 프로미스의 then, catch, finall..
Express (2) 동적 웹사이트 만들기 (계산기 서비스)
·
개발/Express
이번 포스팅에서는 Express를 사용하여 간단한 계산기 서비스를 제공하는 웹 애플리케이션 페이지를 만들어 보도록 하겠습니다. 계산기 html 작성 계산기로 사용할 html 문서를 아래와 같이 작성해줍니다. Calculator Submit 여기서 핵심은 바로 form 태그를 사용했다는 것인데요. 중요한 사항들만 간단히 정리해보도록 하겠습니다. form 태그를 사용하면 정보를 제출할 수 있음 action은 form 제출을 처리하는 URL을 지정하며 데이터가 도착하는 URL입니다. 사용할 수 있는 대표적인 HTTP 메소드는 post, get post는 데이터를 request body에 담아 보냄 get 은 action url에 ? 와 함께 전달됨 더 알아보기 https://developer.mozilla.o..
자바스크립트 코드 난독화 사이트
·
개발/JavaScript
자바스크립트 난독화를 통해 코드를 이해하기 어렵고, 권한 없이 복사 및 재사용, 수정이 힘들게 만들 수 있습니다. 난독화를 거친 코드는 가독성이 떨어지지만, 기존 코드와 동일하게 작동합니다 자바스크립트 난독화 사이트: https://obfuscator.io/ UglifyJS와 같이 자바스크립트 코드 이해가 어렵게 만들어 주는 사이트도 있지만, JS Beautifier와 같은 앱을 통해 쉽게 변환할 수 있습니다. 위 사이트에서는 self-defending, debug protection과 같은 추가 난독 기능을 제공합니다. 자바스크립트 소스 코드를 아래 창에 붙여 넣으면, 다음과 같이 난독화된 코드로 변환됩니다.
자바스크립트 배열 중복 요소 확인하기: indexOf()와 lastIndexOf() 활용
·
개발/JavaScript
자바스크립트 indexOf()와 lastIndexOf()를 활용하여 문자열과 배열의 중복 요소를 확인할 수 있습니다. indexOf() 메소드 설명 자바스크립트 indexOf() 메소드는 자바스크립트 lastIndexOf() 메소드는 호출하는 문자열 내 특정 값이 등장하는 첫 인덱스를 리턴하며, 값이 발견되지 않으면 -1을 리턴합니다. const paragraph = 'Show me the money, big money.'; const searchTerm = 'money'; console.log(paragraph.indexOf(searchTerm)); // 12물론, 이를 배열에도 사용할 수 있습니다. const words = ['dash', 'apple..
[코드 워즈] 8. 특정 문자열 치환하기(못 풂)
·
개발/TIL;
문제 문자열을 "(" 또는 ")"로 변환하기. 특정 문자가 한 번만 등장할 경우 "("로, 두 번 이상 등장할 경우 ")"로 치환하기. 문제 주소: www.codewars.com/kata/54b42f9314d9229fd6000d9c/train/javascript Codewars: Achieve mastery through challenge Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential. www.codewars.com 내 풀이(못 풂) function duplicateEncode(word){ const words = word...
[코드 워즈] 7. RGB To Hex Conversion
·
개발/TIL;
문제 RGB 숫자 값을 16진수로 변경하기. RGB 숫자는 0에서 255사이이며, 16진수는 반드시 여섯 자리여야함. RGB 숫자 값이 해당 범위 밖에 있는 경우 가장 가까운 유효 숫자로 전환되어야 함. 문제 주소: www.codewars.com/kata/513e08acc600c94f01000001/train/javascript Codewars: Achieve mastery through challenge Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential. www.codewars.com 내 풀이 function rgb(r, g,..
[코드 워즈] 6. Vowel Count
·
개발/TIL;
문제 아규먼트로 주어지는 문자에서 모음 숫자 세기. (영문을 기준으로하며 a, e, i, o, u만 모음으로 취급) 문제 주소: www.codewars.com/kata/54ff3102c1bad923760001f3/train/javascript Codewars: Achieve mastery through challenge Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential. www.codewars.com 내 풀이 function getCount(str) { let vowelsCount = 0; const vowels = ['a', ..