๊ด€๋ฆฌ ๋ฉ”๋‰ด

bom's happy life

[JS] ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ๊ฐ์ฒด๋ฆฌํ„ฐ๋Ÿดํ˜•์‹(object literal), ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ• ๋ณธ๋ฌธ

Deveolpment Study๐Ÿ—‚๏ธ/Javascript

[JS] ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ๊ฐ์ฒด๋ฆฌํ„ฐ๋Ÿดํ˜•์‹(object literal), ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

bompeach 2024. 1. 30. 13:08

โ˜‘๏ธ๋ฐ‘์˜ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ฝ”๋“œ๋ฅผ ๊ฐ์ฒด๋ฆฌํ„ฐ๋Ÿดํ˜•์‹+๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ๋ฐ”๊ฟ”์„œ ์ฒ˜๋ฆฌํ•ด๋ณด์ž.

function save_btn(obj) {
    var year = document.getElementById('year').value;
    var month = document.getElementById('month').value;
    var light = document.getElementById('light').value;
    var compact = document.getElementById('compact').value;
    var subMidSize = document.getElementById('subMidSize').value;
    var midSize = document.getElementById('midSize').value;
    var semiLarge = document.getElementById('semiLarge').value;
    var large = document.getElementById('large').value;
    var electric = document.getElementById('electric').value;
    
    if(year.trim() == 'none') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(month.trim() == 'none') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(light.trim() == null || light.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(compact.trim() == null || compact.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(subMidSize.trim() == null || subMidSize.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(midSize.trim() == null || midSize.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(semiLarge.trim() == null || semiLarge.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(large.trim() == null || large.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
    if(electric.trim() == null || electric.trim() == '') {
    	alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
    	return;
    }
	
	var form = document.getElementById('stdGasPriceVo');
	form.action = '${pageContext.request.contextPath}/stdGasPrice/permit/ins';
	form.method = 'POST';
	form.submit();
}

 

 

 

โ˜‘๏ธ๋จผ์ € fields ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ฐ ํ•„๋“œ์˜ ID์™€ ๊ฐ’์„ ๋งคํ•‘ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋‹ค์Œ for - in ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ์ฒด์˜ ๊ฐ ํ‚ค(ํ•„๋“œ)๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ ํ•ด๋‹น ํ•„๋“œ์˜ ๊ฐ’์ด ๋น„์–ด์žˆ๋Š”์ง€ ๋˜๋Š” none์ธ์ง€ ๊ฒ€์‚ฌํ•œ๋‹ค. ์–ด๋–ค ํ•„๋“œ๋ผ๋„ ์ด ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ํ•จ์ˆ˜๋ฅผ ์ข…๋ฃŒํ•œ๋‹ค. 

function save_btn(obj) {
    var fields = {
        'year': document.getElementById('year').value,
        'month': document.getElementById('month').value,
        'light': document.getElementById('light').value,
        'compact': document.getElementById('compact').value,
        'subMidSize': document.getElementById('subMidSize').value,
        'midSize': document.getElementById('midSize').value,
        'semiLarge': document.getElementById('semiLarge').value,
        'large': document.getElementById('large').value,
        'electric': document.getElementById('electric').value
    };
    
    for (var key in fields) {
        if (fields[key].trim() === 'none' || fields[key].trim() === null || fields[key].trim() === '') {
            alert("๋นˆ์นธ์„ ์ฑ„์›Œ์ฃผ์„ธ์š”.");
            return;
        }
    }

    var form = document.getElementById('stdGasPriceVo');
    form.action = '${pageContext.request.contextPath}/stdGasPrice/permit/ins';
    form.method = 'POST';
    form.submit();
}

 

 

 

 

.

.

.

 

๐Ÿ’ก๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด ํ˜•์‹์ด๋ž€?

`ํ‚ค : ๊ฐ’` ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์กฐํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.

 

//๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์˜ ๊ธฐ๋ณธ๊ตฌ์กฐ
var objectName = {
    key1: value1,
    key2: value2,
    key3: value3
    // ...
};

 

 

์œ„์˜ fields ๊ฐ์ฒด์˜ ๊ตฌ์„ฑ

var fields = {
    'year': document.getElementById('year').value,
    'month': document.getElementById('month').value,
    // ๋‚˜๋จธ์ง€ ํ•„๋“œ๋“ค...
};

์—ฌ๊ธฐ์„œ ๊ฐ `ํ‚ค`(ex: 'year', 'month', 'light' ๋“ฑ)๋Š” ๊ฐ์ฒด ๋‚ด์˜ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ด์— ๋Œ€์‘ํ•˜๋Š” `๊ฐ’`์€ ํ•ด๋‹น ์‹๋ณ„์ž์™€ ์—ฐ๊ด€๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” html๋ฌธ์„œ ๋‚ด์˜ ํŠน์ • ์š”์†Œ๋“ค์˜ ํ˜„์žฌ ๊ฐ’์„ ๋‚ธ๋‹ค.

 

 

 

๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด๊ณผ ๋ฐฐ์—ด์˜ ์ฐจ์ด >

โ—๋ฐ˜๋ฉด์— javascript ๋ฐฐ์—ด์€ ์ˆœ์„œ๊ฐ€ ์ง€์ •๋œ ๊ฐ’์˜ ๋ฆฌ์ŠคํŠธ๋กœ, ์ผ๋ฐ˜์ ์œผ๋กœ ๋™์ผํ•œ ์œ ํ˜•์˜ ๊ฐ’๋“ค์„ ์ €์žฅํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.

//๋ฐฐ์—ด์˜ ๊ธฐ๋ณธ๊ตฌ์กฐ
var arrayName = [value1, value2, value3];

 

 

fields๋Š” ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์ด๊ธฐ ๋•Œ๋ฌธ์— ํ‚ค-๊ฐ’ ์Œ์œผ๋กœ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋ฐฐ์—ด๊ณผ ๋‹ค๋ฅด๊ฒŒ ์ธ๋ฑ์Šค ๊ธฐ๋ฐ˜์œผ๋กœ ์ ‘๊ทผํ•˜์ง€ ์•Š๋Š”๋‹ค.