var car = ['소나타', 50000, ''white].sort() 및 데이터 자르기.slice(x, y), 데이터 삽입 .push(x), 데이터 검색 .include()등 가능// Array 자료형
var car = ['소나타', 5000, 'white'];
car[0] = '토레스'; // 수정
car[3] = '오토'; // 추가
console.log(car); // ['토레스', 5000, 'white', '오토']
console.log(car[1]); // 5000
console.log(car.sort()); // 정렬, [5000, 'white', '오토', '토레스']
console.log(car.slice(1,3)); // 1부터 3 전번째 까지 데이터 자르기, ['white', '오토']
var car2 = { name : '소나타', price : 50000 };// Object 자료형
var car2 = {name : '소나타', price : 50000};
car2.price = '80000';
car2.name = '토레스';
console.log(car2); // {name: '토레스', price: '80000'}
console.log(car2['price']); // 80000
console.log(car2.price); // 8000
<div class="container mt-3">
<div class="card p-3">
<span class="car-title">상품명</span>
<span class="car-price">가격</span>
<span class="car-color">색</span>
</div>
</div>
<script>
var car = ['소나타', 5000, 'white'];
var car2 = {name : '소나타', price : 50000, color:['white', 'black', 'yellow']};
console.log(car2);
document.querySelector('.car-title').innerHTML = car[0];
document.querySelector('.car-price').innerHTML = `${car2.price}원`;
document.querySelector('.car-color').innerHTML = car2.color[1];
</script>

<div class="card-group container">
<div class="card">
<img src="https://via.placeholder.com/600">
<div class="card-body">
<h5>Card title</h5>
<p>가격 : 70000</p>
<button class="btn btn-danger">주문하기</button>
</div>
</div>
<div class="card">
<img src="https://via.placeholder.com/600">
<div class="card-body">
<h5>Card title</h5>
<p>가격 : 70000</p>
<button class="btn btn-danger">주문하기</button>
</div>
</div>
<div class="card">
<img src="https://via.placeholder.com/600">
<div class="card-body">
<h5>Card title</h5>
<p>가격 : 70000</p>
<button class="btn btn-danger">주문하기</button>
</div>
</div>
</div>
<script>
var products = [
{ id : 0, price : 70000, title : 'Blossom Dress' },
{ id : 1, price : 50000, title : 'Springfield Shirt' },
{ id : 2, price : 60000, title : 'Black Monastery' }
];
for(let i=0; i<$('.card-body').length; i++){
$('.card-body h5').eq(i).html(products[i].title)
document.querySelectorAll('.card-body p')[i].innerHTML = `가격 : ${products[i].price}`;
}
</script>
-<select>
: 사용자가 고를 수 있는 선택지를 드랍다운 메뉴로 제공하는 <input>
<option>으로 넣으면 됨<select> 태그도 선택시 input, change 이벤트가 발생<select> 태그도 .value로 유저가 입력한 값을 가져올 수 있음<select> 박스가 등장<input>과 똑같이 .value 사용하면 알 수 있음
no-shirt{
display : none
}
<form class="container my-5 form-group">
<p>상품선택</p>
<select class="form-select mt-2">
<option>모자</option>
<option>셔츠</option>
</select>
<select class="form-select mt-2 no-shirt">
<option>95</option>
<option>100</option>
</select>
</form>
<script>
$('.form-select').eq(0).on('input', function(){
if($('.form-select').eq(0).val() == '셔츠'){
$('.form-select').eq(1).removeClass('no-shirt');
} else {
$('.form-select').eq(1).addClass('no-shirt');
}
});
</script>
<script>
$('.form-select').eq(0).on('input', function(e){
var value = e.currentTarget.value;
$('.form-select').eq(1).toggleClass('no-shirt', value !== '셔츠');
});
</script>
또는
<script>
$('.form-select').eq(0).on('input', function(e){
var value = this.value;
$('.form-select').eq(1).toggleClass('no-shirt', value !== '셔츠');
});
</script>
<div id="test">
<h4>안뇽 안뇽</h4>
</div>
<script>
var a = document.createElement('p'); // p태그 생성
a.innerHTML = '안녕'; // p태그 안에 '안녕' 넣기
document.querySelector('#test').appendChild(a); // 아이디가 test인것 안에 <p>안녕<p> 추가
</script>
insertAdjacentHTML() 안에 넣고beforeend로 맨 밑에 추가 가능createElement 보다 코드가 짧음<script>
var pTag = '<p class="hello">안녕</p>'
document.querySelector('#test').insertAdjacentHTML('beforeend', pTag);
</script>
<script>
var pTag = '<p class="hello">안녕</p>'
$('#test').append(pTag);
</script>
<form class="container my-5 form-group">
<p>상품선택</p>
<select class="form-select mt-2">
<option>모자</option>
<option>셔츠</option>
<option>바지</option>
</select>
<select class="form-select mt-2 form-hide">
</select>
</form>
<script>
$('.form-select').eq(0).on('input', function(e){
var value = this.value;
if(value == '셔츠'){
$('.form-select').eq(1).removeClass('form-hide');
$('.form-select').eq(1).html(''); // 비우기
var detailOption = `<option>95</option><option>100</option>`;
$('.form-select').eq(1).append(detailOption);
} else if(value == '바지'){
$('.form-select').eq(1).removeClass('form-hide');
$('.form-select').eq(1).html('');
var detailOption = `<option>28</option><option>30</option>`;
$('.form-select').eq(1).append(detailOption);
}
});
</script>
<script>
var detailOption = $('.form-select').eq(1)
function updateDetailOptions(options){
detailOption.removeClass('form-hide').html(options); // 보이게 + option 추가
}
$('.form-select').eq(0).on('input', function(e){
var value = this.value;
if(value == '셔츠') {
updateDetailOptions(`<option>95</option><option>100</option>`);
} else if(value == '바지'){
updateDetailOptions(`<option>28</option><option>30</option>`);
} else{
detailOption.addClass('form-hide');
}
});
</script>
<option> 생성var pants = [28, 30, 32];
pants.forEach(function(size, i){
console.log(size);
});
var pants = [28, 30, 32];
pants.forEach((size) => {
console.log(size);
});
// 또는
pants.forEach(size => { // 소괄호 생략 가능
console.log(size);
});
var obj = {name : 'kim', age : 20}
for (var key in obj){
console.log(key); // key 이름
console.log(obj[key]);// key에 해댱하는 value
}
let 함수 = function(){ console.log('안녕') }
let 함수 = () => { console.log('안녕') }
<form class="container my-5 form-group">
<p>상품선택</p>
<select class="form-select mt-2">
<option>모자</option>
<option>셔츠</option>
<option>바지</option>
</select>
<select class="form-select mt-2 form-hide">
</select>
</form>
<script>
var shirts = [95, 100, 105];
var pants = [28, 30, 32, 40];
$('.form-select').eq(0).on('input', function(e){
var value = this.value;
if(value == '셔츠'){
$('.form-select').eq(1).removeClass('form-hide');
$('.form-select').eq(1).html('');
// 1. forEach
shirts.forEach(function(size){ // forEach 사용시 콜백함수
$('.form-select').eq(1).append(`<option>${size}</option>`);
});
} else if (value == '바지') {
$('.form-select').eq(1).removeClass('form-hide');
$('.form-select').eq(1).html('');
// 2. for문
for (let i = 0; i < pants.length; i++) {
var detailOption = `<option>${pants[i]}</option>`;
$('.form-select').eq(1).append(detailOption);
}
// 3. forEach arrow function
pants.forEach((size) => { // arrow function
$('.form-select').eq(1).append(`<option>${size}</option>`)
});
} else {
$('.form-select').eq(1).addClass('form-hide');
$('.form-select').eq(1).html('');
}
});
</script>
var detailOption = $('.form-select').eq(1)
function detailOptions(options){
detailOption.removeClass('form-hide').html(options);
}
$('.form-select').eq(0).on('input', function(e){
var value = this.value;
var html = "";
if(value == '셔츠') {
shirts.forEach(function(size){
html += `<option>${size}</option>`;
});
detailOptions(html);
} else if(value == '바지'){
pants.forEach(function(size){
html += `<option>${size}</option>`;
});
detailOptions(html);
} else{
detailOption.addClass('form-hide');
}
});