JavaScript
-
문자열.charCodeAt(index)JavaScript/입 속의 검은 잎 2022. 9. 28. 00:30
35번과 36번 문자열 비교의 경우. function solution(strings, n) { return strings.sort().sort((a,b) => a.charCodeAt(n) - b.charCodeAt(n)) } -charCodeAt( index) 안의 index가 문자열의 그 index인 것이 헷갈렸었다. -제한조건, "n번째 문자열이 같을 때는 본래의 사전순서대로" 라는 조건을 구현하려 시도하다가... 대단히 헤맸다. 어디까지 갔다왔나 몰라. let s = "Zbcdefg" function solution(s) { let n = [...s] // ['Z', 'b', 'c','d', 'e', 'f', 'g'] return n.sort((a,b) => b.charCodeAt(0)-a.char..
-
forEach(), 콜백함수, 익명함수JavaScript 2022. 9. 26. 23:47
자바스크립트는 함수도 자료로 다룬다. 10년 쯤 된 일이지만, 이로 말미암아 비동기 프로그래밍이 주목받기도 했다. 특히 익명함수, 또는 람다는 기본적인 문법으로 포함되었다. 콜백함수 함수도 하나의 자료형이므로, 매개변수로 전달 가능. aka 콜백함수. 1.선언적 함수로서의 콜백함수 2.익명함수로서의 콜백함수 콜백함수를 활용하는 함수들 forEach() 콜백함수를 활용하는 기본. forEach()메소드는 배열이 갖고 있는 함수로서 콜백 함수를 호출한다. 구문 function (value, index, array) { } const numbers = [273, 52, 103, 32, 57] numbers.forEach(function (value,index, array){ console.log(`${inde..
-
map(parseInt) 가 NaN 으로 응답했을 때, 이 문제는 모종의 유적(類的) 문제틀로 인한 파생이 아닐까 하는...JavaScript/입 속의 검은 잎 2022. 9. 26. 20:42
https://medium.com/dailyjs/parseint-mystery-7c4368ef7b21 Why ['1', '7', '11'].map(parseInt) returns [1, NaN, 3] in Javascript Javascript is weird. medium.com 23번 문제 "자연수 뒤집기" 에서 나온 이슈 let n = 12345 // 임의로 넣은 수 function solution(n) { const arr = (n + '').split('') // 숫자->문자->배열 console.log(arr) // [ '1', '2', '3', '4', '5' ] const arr2 = arr.map(parseInt); console.log(arr2) // [ 1, NaN, NaN, NaN,..
-
만날 찾아봤다 까먹는 것1 : 숫자 쪼개서 배열 만들기JavaScript/입 속의 검은 잎 2022. 9. 26. 12:20
function numberToString(n) { return (n + '').split('') } console.log(151 + '') // 151 console.log(typeof(151 + '')) // string console.log(numberToString(151)) // [ '1', '5', '1' ] 숫자에는 바로 split 을 쓸 수 없다. 우회로가 필요하다. 1) 숫자에 ''(아무것도 없는 것 그냥 더함)을 더해 문자로 인식하도록 야부리를 친다. 2) 이제 split('')가 먹힌다. 하나씩 쪼개어 배열이 된다.
-
JWT (JSON Web Token)JavaScript 2022. 9. 25. 23:36
http 프로토콜은 상태(state)를 유지하지 않는 stateless protocol. 요청(request)를 전송하고 응답(response)를 전송받은 시점에서 통신이 종료되며 어떠한 상태 정보도 남지 않는다. 즉, 특정 클라이언트에서 동일 서버에 반복하여 접속하여도 각각의 접속은 독립적인 트랜잭션으로 취급된다. 따라서 로그인 화면에서 아이디, 패스워드를 입력하여 사용자 인증 과정을 거친 이후에 재차 웹사이트에 접근하면 로그인 상태임을 인식(유지)할 수 없으므로 매번 사용자 인증 과정을 반복해야 하는 문제가 발생한다. -http 프로토콜의 상태 비유지(stateless) 문제를 보완하기 위해 -클라이언트와 서버 간의 논리적 연결을 유지하기 위해 1) Session, 2) Cookie, 3)Cookie..
-
array.equals : 배열끼리의 비교JavaScript/입 속의 검은 잎 2022. 9. 25. 20:47
https://stackoverflow.com/questions/7837456/how-to-compare-arrays-in-javascript How to compare arrays in JavaScript? I'd like to compare two arrays... ideally, efficiently. Nothing fancy, just true if they are identical, and false if not. Not surprisingly, the comparison operator doesn't seem to work. var a1 = [... stackoverflow.com 미확인 if(Array.prototype.equals) //attach the .equals method to A..
-
찾기 세트 : find(), findIndx(), indexOfJavaScript/입 속의 검은 잎 2022. 9. 25. 20:42
1. findIndexof() : 값으로 찾고, 인덱스 숫자로 받아온다. function solution(seoul) { const index = seoul.findIndex(name => name == "Kim"); return `김서방은 ${index}에 있다`; } 2.indexOf function findKim(seoul){ var idx = seoul.indexOf('Kim'); return "김서방은 " + idx + "에 있다"; } 3.find()
-
filter()JavaScript/입 속의 검은 잎 2022. 9. 25. 15:30
이 장황한 코드는 filter를 쓰면 간단하다. find와 유사하지만, 조건에 맞는 요소를 모조리 담은 배열을 반환한다. 반면 find 메서드는 함수의 반환 값을 true로 만드는 단 하나의 요소를 찾는다. 이 장황한 코드는 filter로 간단하게 만들 수 있다. function solution(arr, divisor) { let Cthulu = []; let Nyarlathotep = [-1]; for (i=0; i0){ return Cthulu.sort( function(a,b){ return(a-b); }); } else{ return Nyarlathotep; } } 배열 안에서 나머지가 0인 것들만 반환한다. function solution(arr, divisor) { var answer = ar..