JavaScript 7

[JavaScript] ๋ฌธ์ž์—ด ๋น„๊ต

๋ฌธ์ž์—ด ์ƒ์ˆ˜ ํ’€(string constant pool)์ž๋ฐ”๊ฐ€ ๋ฌธ์ž์—ด์„ string pool์—์„œ ๊ด€๋ฆฌํ•˜๋“ฏ์ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” string constant pool์—์„œ ๋ฌธ์ž์—ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค. ๋งŒ์•ฝ ์ด๋ฏธ ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹น๋œ ๋ฌธ์ž์—ด์ด ์žˆ๋‹ค๋ฉด, ์ƒˆ ๋ณ€์ˆ˜์— ํ•ด๋‹น ๋ฌธ์ž์—ด์„ ํ• ๋‹นํ•˜๋”๋ผ๋„ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ  ์ฃผ์†Œ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.  How are strings stored in JavaScript ? - GeeksforGeeksA Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/compet..

JavaScript 2024.10.07

[JavaScript] Kakao Map API

๐Ÿ“Œ ์นด์นด์˜ค๋งต api ์‹œ์ž‘ํ•˜๊ธฐ Kakao Developers์นด์นด์˜ค API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•ด๋ณด์„ธ์š”. ์นด์นด์˜ค ๋กœ๊ทธ์ธ, ๋ฉ”์‹œ์ง€ ๋ณด๋‚ด๊ธฐ, ์นœ๊ตฌ API, ์ธ๊ณต์ง€๋Šฅ API ๋“ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.developers.kakao.com  ๐ŸŒ ์ง€๋„ ๋„์šฐ๊ธฐKakao Map API๋ฅผ ๋ฐœ๊ธ‰ ๋ฐ›์•˜๋‹ค๋ฉด ์ด์ œ ์ง€๋„๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. `html` ํŒŒ์ผ์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.   `html`์— `map`์„ ๋„์šธ ์ ๋‹นํ•œ ์š”์†Œ๋ฅผ ๋งŒ๋“ ๋‹ค.   ๋‹ค์Œ๊ณผ ๊ฐ™์ด js ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์ง€๋„๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ๋‹ค. const mapContainer = document.querySelector(".map"); // ์ง€๋„๋ฅผ ํ‘œ์‹œํ•  div const mapOption = { center: new kakao.maps.Lat..

JavaScript 2024.09.19

[JavaScript] ๋ฐฐ์—ด

๐Ÿ“Œ๋ฐฐ์—ด(Array)์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐฐ์—ด์€ ์ผ๋ฐ˜์ ์ธ ๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ํ‰๋‚ด๋‚ธ ํŠน์ˆ˜ ๊ฐ์ฒด๋‹ค.์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์— ๋ฐฐ์—ด์ด๋ผ๋Š” ํƒ€์ž…์€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉฐ ๊ฐ์ฒด๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐฐ์—ด์€ ์ผ๋ฐ˜์ ์ธ ์˜๋ฏธ์˜ ๋ฐฐ์—ด, ์ฆ‰ '๊ฐ ์š”์†Œ๊ฐ€ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ ์—ฐ์†์ ์œผ๋กœ ๋‚˜์—ด๋œ ์ž๋ฃŒ๊ตฌ์กฐ'๊ฐ€ ์•„๋‹Œ ํฌ์†Œ ๋ฐฐ์—ด๋กœ, ๊ฐ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์€ ๋™์ผ์€ ํฌ๊ธฐ๋ฅผ ๊ฐ–์ง€ ์•Š์•„๋„ ๋˜๋ฉฐ ์—ฐ์†์ ์œผ๋กœ ์ด์–ด์ ธ์žˆ์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด์€ ํ•ด์‹œ ํ…Œ์ด๋ธ”๋กœ ๊ตฌํ˜„๋œ ๊ฐ์ฒด๋กœ, ์ผ๋ฐ˜์ ์ธ ๋ฐฐ์—ด๊ณผ ๋‹ฌ๋ฆฌ ์ธ๋ฑ์Šค๋กœ ๋ฐฐ์—ด ์š”์†Œ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์†๋„๊ฐ€ ๋А๋ฆฌ์ง€๋งŒ ํŠน์ • ์š”์†Œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜ ์‚ฝ์ž… ๋˜๋Š” ์‚ญ์ œํ•˜๋Š” ๊ฒฝ์šฐ ๋น ๋ฅธ ์†๋„๋ฅผ ๋ณด์ธ๋‹ค.   ๐Ÿ“Œํ™•์ธ`isArray()`์ „๋‹ฌ๋œ ์ธ์ž๊ฐ€ ๋ฐฐ์—ด์ด๋ฉด `true`๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.  ๐Ÿ“Œ์‚ฝ์ž…`push()` ๋ฐฐ์—ด์˜ ๋งจ ๋’ค์— ์š”์†Œ๋ฅผ ์‚ฝ์ž…ํ•˜๊ณ  ..

JavaScript 2024.06.19

[JavaScript] axios.get ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์ „์†ก๋˜์ง€ ์•Š์Œ

๐Ÿ“Œ๋ฌธ์ œ ์นดํ…Œ๊ณ ๋ฆฌ๋ช…์ด `์ž๋ฐ”`์ธ ๊ฒŒ์‹œ๊ธ€ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ์œ„ํ•ด ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ `name: '์ž๋ฐ”'`๋ฅผ ์ „์†กํ–ˆ์œผ๋‚˜ ๋ฐฑ์—์„œ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์ธ์‹๋˜์ง€ ๋ชปํ•˜๊ณ  null ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ. const param = { name : '์ž๋ฐ”' } getBoardList(param).then(result => { console.log(result); }).catch( e => { console.log(e); }); async function getBoardList(paramList){ const response = await axios.get('/board/list', paramList); return response.data; } @GetMapping("/list") @ResponseBody public List board..

JavaScript 2024.03.29

[JavaScript] url ํŒŒ๋ผ๋ฏธํ„ฐ ํ™œ์šฉํ•˜๊ธฐ

๐Ÿ“Œ๋ฌธ์ œ ๊ธฐ์กด์—๋Š” ์ œ์ถœ์ด ์„ฑ๊ณตํ•˜๊ฑฐ๋‚˜ ์‹คํŒจํ•  ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ์•ˆ๋‚ดํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด `Controller` ๋ฉ”์„œ๋“œ ๋‚ด์— `PrintWriter`๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง์ ‘ ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋กœ `alert`๋ฅผ ๋„์šฐ๋„๋ก ํ–ˆ๋‹ค. response.setCharacterEncoding("utf-8"); response.setContentType("text/html; charset=utf-8"); PrintWriter w = null; try { w = response.getWriter(); } catch (IOException e) { // throw new RuntimeException(e); return "redirect:/another"; } if(result == 1){ w.println(""); w.close(); ๋ฌผ..

JavaScript 2024.03.29

[JavaScript] ๊ฐ™์€ ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง„ ๋ฒ„ํŠผ ํ•œ๋ฒˆ์— eventListener ์„ค์ •ํ•˜๊ธฐ

const buttons = document.querySelectAll(".customBtn"); buttons.forEach(function (customBtn) { customBtn.addEventListener("click", function() {// ์—ฌ๊ธฐ์— ํด๋ฆญ ์‹œ ์ด๋ฒคํŠธ ๊ตฌํ˜„ } }}  `querySelectAll()`๋กœ ๋ชจ๋“  ๋ฒ„ํŠผ์„ ๊ฐ€์ ธ์˜ค๋ฉด ๋ฒ„ํŠผ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๋ณ€์ˆ˜๊ฐ€ ๋œ๋‹ค.`forEach()` ํ•จ์ˆ˜ ๋‚ด์—์„œ `addEventListener()`๋ฅผ ์ ์šฉํ•ด์ฃผ๋ฉด ๋œ๋‹ค.  ๐Ÿ“Œ์‘์šฉ๋ฒ„ํŠผ์ž…๋‹ˆ๋‹ค.๋ฒ„ํŠผ์ž…๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์ž…๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์ž…๋‹ˆ๋‹ค.  ์ด๋ ‡๊ฒŒ ๊ฐ™์€ ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง„ ๋ฒ„ํŠผ์ด ์—ฌ๋Ÿฌ ๊ฐœ ์กด์žฌํ•  ๋•Œ ๋ชจ๋‘ ๊ฐ™์€ ์ด๋ฒคํŠธ๋ฅผ ๋ถ€์—ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•œ๋‹ค.  con..

JavaScript 2024.03.21

[JavaScript] ์•„์ด๋”” ์ค‘๋ณต ํ™•์ธ, ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ

ID ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ธ ์•„์ด๋””์ž…๋‹ˆ๋‹ค. ๋น„๋ฐ€๋ฒˆํ˜ธ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. //์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธํ•˜์ง€ ์•Š์œผ๋ฉด join ๋ฒ„ํŠผ ๋น„ํ™œ์„ฑํ™” var idCheck = false; var passwordCheck = false; //์•„์ด๋”” ์ค‘๋ณต ์ฒดํฌ function checkId(){ var inputId = $('#id').val(); $.ajax({ data : { inputId : inputId }, url : './checkId', type : 'post', success : function(data){ if(data === '1'){//์•„์ด๋””๊ฐ€ ์ค‘๋ณต๋˜์—ˆ๋‹ค๋ฉด $('#id').css("background-color", "lightpink"); $('#id-alert')..

JavaScript 2024.01.25