728x90
๋ฐ˜์‘ํ˜•

์ „์ฒด ๊ธ€ 1179

[js][Echarts] ์ฐจํŠธ์— ๋ฐ์ดํ„ฐ ์ด๋ฆ„ ํ‘œ์‹œํ•˜๊ธฐ

label: { show: true, fontSize: 12, fontWeight: "bold", position: "inside", // Position the label inside the bar color: "black", formatter: function(data) { const seriesName = data.seriesName; // The series name (e.g., '์˜์—…์ˆ˜์ต') const value = Common.numberWithCommas(data.data); // The value, formatted return `${seriesName}\n${value}`; // Add a newline characte..

Front/JS & jQuery 2024.12.28

[js][Echarts] stack bar ์ฐจํŠธ์—์„œ ๊ฐ ๋ง‰๋Œ€์— ๋‹ค๋ฅธ ์ƒ‰์ƒ ์„ค์ •ํ•˜๊ธฐ

ECharts์—์„œ x์ถ•์„ ๋”ฐ๋ผ ๋ง‰๋Œ€ํ˜• ์ฐจํŠธ์˜ ๊ฐ ๋ง‰๋Œ€์— ๋‹ค๋ฅธ ์ƒ‰์ƒ์„ ์„ค์ •ํ•˜๋ ค๋ฉด,๊ฐ ๋ง‰๋Œ€์— ํ•ด๋‹นํ•˜๋Š” ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ฒด itemStyle๋‚ด์˜ ์†์„ฑ์„ ์‚ฌ์šฉ์ž ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.getCoChartOption = (xAxisData, amtArr, otherArr, valRange) => { const amtColors = ["#F4E5E0", "#F0A5A0", "#E8C6C0", "#D8B7A0"]; // Example colors for "์˜์—…์ˆ˜์ต" bars const otherColors = ["#5FC6E3", "#4BADD8", "#3A95B3", "#2681A0"]; // Example colors for "์˜์—…์™ธ์ˆ˜์ต" bars return { tooltip: {..

Front/JS & jQuery 2024.12.26

[jquery] evt.currentTarget์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํƒ๋œ <select> ๋ฐ•์Šค์˜ ์„ ํƒ๋œ option์˜ text๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ

evt.currentTarget์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํƒ๋œ ๋ฐ•์Šค์˜ ์„ ํƒ๋œ option์˜ text๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค $(document).on('change', 'select', function(evt) { var selectedText = $(evt.currentTarget).find('option:selected').text(); console.log('์„ ํƒ๋œ ํ…์ŠคํŠธ:', selectedText);});

Front/JS & jQuery 2024.12.25

MSA

MSA(Microservices Architecture) ๊ฐœ๋ฐœ์€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ž‘์€ ๋…๋ฆฝ์ ์ธ ์„œ๋น„์Šค ๋‹จ์œ„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ๊ฐœ๋ฐœ, ๋ฐฐํฌ, ์šด์˜ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.์ „ํ†ต์ ์ธ ๋ชจ๋†€๋ฆฌ์‹(monolithic) ์•„ํ‚คํ…์ฒ˜์™€ ๋‹ฌ๋ฆฌ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ „์ฒด๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋กœ ๋‚˜๋ˆ„์–ด๊ฐ ์„œ๋น„์Šค๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋ฉฐ, ์„œ๋กœ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ํ†ต์‹ ํ•ฉ๋‹ˆ๋‹ค.  MSA์˜ ํŠน์ง•์ž‘์€ ์„œ๋น„์Šค๋กœ ๋ถ„๋ฆฌํ•˜๋‚˜์˜ ํฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์€ ์„œ๋น„์Šค๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค.๊ฐ ์„œ๋น„์Šค๋Š” ํŠน์ • ๋น„์ฆˆ๋‹ˆ์Šค ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: ๊ฒฐ์ œ, ์‚ฌ์šฉ์ž ์ธ์ฆ, ์ƒํ’ˆ ๊ด€๋ฆฌ ๋“ฑ)๋…๋ฆฝ ๋ฐฐํฌ ๊ฐ€๋Šฅ๊ฐ ์„œ๋น„์Šค๋Š” ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ๋ฐœ, ํ…Œ์ŠคํŠธ, ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.ํŠน์ • ์„œ๋น„์Šค๋งŒ ์ˆ˜์ •ํ•˜๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•ด๋„ ์ „์ฒด ์‹œ์Šคํ…œ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.๋‹ค์–‘ํ•œ ๊ธฐ์ˆ  ์Šคํƒ ํ—ˆ์šฉ๊ฐ ์„œ๋น„์Šค๋Š” ..

IT์ง€์‹ 2024.12.24

[JAVA]BigDecimal null ์ฒ˜๋ฆฌ ์˜ˆ์ œ

import java.math.BigDecimal;public class Main { public static void main(String[] args) { EqCrAdvpSum eqCrAdvpSum = new EqCrAdvpSum(); // getTotTotalAmt() ๊ฐ’์ด null์ธ์ง€ ํ™•์ธํ•˜๊ณ  null์ด๋ฉด 0์œผ๋กœ ์„ค์ • BigDecimal totalAmt = eqCrAdvpSum.getTotTotalAmt() != null ? eqCrAdvpSum.getTotTotalAmt() : BigDecimal.ZERO; System.out.println("Total Amount: " + totalAm..

JAVA 2024.12.23

[js][datatables] ์—‘์…€ ํŒŒ์ผ๋ช… ํŠน์ˆ˜๋ฌธ์ž ์ฒ˜๋ฆฌ

& ์ด ๋ณ€ํ™˜๋˜์ง€ ์•Š๊ณ  ๋นˆ๋ฌธ์ž๋กœ ์ถœ๋ ฅ๋˜์–ด์„œ,& ๋ฅผ ํŠน์ • ๋ฌธ์ž์—ด๋กœ ๋Œ€์ฒดfunction sanitizeFileName(fileName) { return fileName.replace(/&/g, '_and_'); // &๋ฅผ '_and_'๋กœ ๋Œ€์ฒด}$('#example').DataTable({ dom: 'Bfrtip', buttons: [ { extend: 'excelHtml5', title: sanitizeFileName('์—‘์…€&ํŒŒ์ผ๋ช…_2024') } ]});

Front/JS & jQuery 2024.12.22

[js] .join("")

JavaScript์˜ join() ๋ฉ”์„œ๋“œ๋Š” ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋ฌธ์ž์—ด๋กœ ๊ฒฐํ•ฉํ•˜์—ฌ ํ•˜๋‚˜์˜ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.๊ฐ ์š”์†Œ๋Š” ์ง€์ •๋œ ๊ตฌ๋ถ„์ž๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.๋นˆ ๋ฌธ์ž์—ด("")์„ ์ „๋‹ฌํ•˜๋ฉด ์š”์†Œ๋“ค์ด ๊ตฌ๋ถ„์ž ์—†์ด ๊ฒฐํ•ฉ๋ฉ๋‹ˆ๋‹ค.const fruits = ["Apple", "Banana", "Cherry"];console.log(fruits.join(" - ")); // ๊ฒฐ๊ณผ: "Apple - Banana - Cherry"console.log(fruits.join("")); // ๊ฒฐ๊ณผ: "AppleBananaCherry"

Front/JS & jQuery 2024.12.21

[js] JavaScript์—์„œ ์ •์ˆ˜๋ผ๋ฆฌ์˜ ๊ณฑ์…ˆ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•

JavaScript์—์„œ ์ •์ˆ˜๋ผ๋ฆฌ์˜ ๊ณฑ์…ˆ์ด๋ผ๋„ ๋ถ€๋™์†Œ์ˆ˜์  ์—ฐ์‚ฐ ํŠน์„ฑ์ƒ์†Œ์ˆ˜์  ๊ณ„์‚ฐ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ ์ •์ˆ˜ ์—ฐ์‚ฐ์ด ํ•„์š”ํ•˜๋‹ค๋ฉด BigInt๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜๊ฒฐ๊ณผ๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ณ ๋ คํ•˜์„ธ์š”. ๊ฒฐ๊ณผ๋ฅผ ์ •์ˆ˜๋กœ ๊ฐ•์ œ ๋ณ€ํ™˜๊ณฑ์…ˆ ๊ฒฐ๊ณผ๊ฐ€ ๋ฏธ์„ธํ•˜๊ฒŒ ์–ด๊ธ‹๋‚  ๊ฒฝ์šฐ Math.round, Math.floor, Math.ceil ๋“ฑ์„ ์‚ฌ์šฉํ•ด ์ •์ˆ˜๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.const result = 0.1 * 0.2;console.log(Math.round(result)); // 0์ •์ˆ˜ ๋ฒ”์œ„๋ฅผ ์œ ์ง€์ •์ˆ˜ ๊ณ„์‚ฐ์—๋งŒ ์ง‘์ค‘ํ•œ๋‹ค๋ฉด, ๊ฐ’์„ BigInt๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.const bigIntResult = BigInt(999999999) * BigInt(999999999);console.log(bigIntResult); // ..

Front/JS & jQuery 2024.12.20

[js] ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ๊ณฑํ–ˆ์Œ์—๋„ ๊ฒฐ๊ณผ๊ฐ€ ์†Œ์ˆ˜์ ์œผ๋กœ ๊ณ„์‚ฐ๋˜๋Š” ๊ฒฝ์šฐ

์ฃผ์š” ์›์ธ๋ถ€๋™์†Œ์ˆ˜์  ์—ฐ์‚ฐ์˜ ํŠน์„ฑJavaScript๋Š” ์ •์ˆ˜๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์ˆซ์ž๋ฅผ ๋ถ€๋™์†Œ์ˆ˜์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์ •์ˆ˜ ์—ฐ์‚ฐ์—์„œ๋„ ๋ฏธ์„ธํ•œ ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์•”๋ฌต์  ํ˜•๋ณ€ํ™˜๋‘ ๊ฐ’์ด ์ •์ˆ˜๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ, ์‹ค์ œ๋กœ๋Š” ์†Œ์ˆ˜์  ์ˆซ์ž(float)๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์˜ˆ๋ฅผ ๋“ค์–ด, 5์™€ 3.0์ฒ˜๋Ÿผ ์ •์ˆ˜์™€ ๋ถ€๋™์†Œ์ˆ˜์  ๊ฐ’์ด ์„ž์—ฌ ์žˆ๋‹ค๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ๋ถ€๋™์†Œ์ˆ˜์ ์œผ๋กœ ๋‚˜์˜ฌ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.ํฐ ์ˆซ์ž ์—ฐ์‚ฐJavaScript์—์„œ ์ •ํ™•ํžˆ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ •์ˆ˜๋Š” -(2^53 - 1)์—์„œ 2^53 - 1 ์‚ฌ์ด์— ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚œ ์ˆซ์ž๋ฅผ ๊ณฑํ•˜๋ฉด ์ •ํ™•๋„๋ฅผ ์žƒ๊ณ  ์†Œ์ˆ˜์  ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Front/JS & jQuery 2024.12.19
728x90
๋ฐ˜์‘ํ˜•