setTimeout, clearTimeout
setTimeout : n์ด ๋ค setTimeout ๋ด๋ถ์ interval์ด ๋ค์ ๋์ํ๊ฒ ํ ๋ ์ฌ์ฉํ๋ค.
clearTimeout : setInterval์ ๋ฉ์ถ๋ค.
//0.1์ด๋ง๋ค ๋ฐฑ๊ทธ๋ผ์ด๋ ์ด๋ฏธ์ง๋ฅผ ๋ฐ๊ฟ์ค๋ค.
var ์ด๋ฏธ์ง์ขํ = 0;
//์๋ฃ๊ตฌ์กฐ์ ์ผ์ข
์ผ๋ก ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๋ ๋์
๋๋ฆฌ ์๋ฃ๊ตฌ์กฐ ์ญํ ์ ํ ์ ์๋ค. 1:1 ๋งค์นญ์ ํํํ๋ค.
var ๋์
๋๋ฆฌ = {
//1:๋ค๋ฅผ ๋งค์นญํ ์๋ ์๋ค. ์๋ฅผ ๋ค์ด ํ๊ตญ์ด๋ฅผ ๋ค๋ฅธ ์ธ์ด๋ค๋ก ํํํ๊ณ ์ถ์ ๋
//๋ฐ์ : ['0','๋ฐ์','rock'],
// ๋ฐ์ : { ๊ฐ์ฒด๋ก ๋ง๋ค ์๋ ์๋ค.
// ํ๊ตญ์ด : '๋ฐ์',
// ์์ด : 'rock',
// ๊ฐ : '0',
// }
๋ฐ์ : '0',
๊ฐ์ : '-142px',
๋ณด : '-284px',
}
/*๊ฐ์ด ์ ํ์ด ์ ๋๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๋์
๋๋ฆฌ๋ฅผ 2๊ฐ ๋ง๋ค๊ณ ๊ฐ์ด ๋ฐ๋ ๋๋ง๋ค ์๋์ผ๋ก ๋ฐ๊ฟ์ค์ผํ๋ค.
var ๋์
๋๋ฆฌ2 = {
'0' : '๋ฐ์',
'-142px' : '๊ฐ์',
'-284px' : '๋ณด',
}*/
//Object.entries(๊ฐ์ฒด)๋ก ๊ฐ์ฒด๋ฅผ 2์ฐจ์ ๋ฐฐ์ด๋ก ๋ฐ๊ฟ ์ ์๋ค.
//console.log(Object.entries(๋์
๋๋ฆฌ));//[ "ํค": "๊ฐ"],[ "ํค": "๊ฐ"],[ "ํค": "๊ฐ"] ๊ฐ๊ฐ [0][1][2] ๋ก ๋์จ๋ค.
function ์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) {
return Object.entries(๋์
๋๋ฆฌ).find(function(v){//๋ฐฐ์ด.find๋ ๋ฐ๋ณต๋ฌธ์ด์ง๋ง ์ํ๋ ๊ฒ์ ์ฐพ์ผ๋ฉด ๋ฉ์ถ๋ค.(return์ด true). 1์ฐจ์ ๋ฐฐ์ด์์ indexOf๋ฅผ ์ผ๋ค๋ฉด 2์ฐจ์๋ฐฐ์ด์์๋ find์findIndex๋ฅผ ์ ์ด๋ค.
//console.log(v);๋ค์ด ์ฝ์๋ก๊ทธ๋ ๋ค ์ง์ฐ๊ณ .์ฝ๋ ๊น๋ํ๊ฒ.
return v[0] === '์ด๋ฏธ์ง์ขํ';//0๋ฒ์งธ๊ฐ ์ด๋ฏธ์ง์ขํ์ธ ์ ๋ฅผ ์ฐพ๋๋ค.๋ฐ๋ณต๋๋ ๋ณ์์ ๊ทธ๊ฒ์ ์ผ๋ฐํํ์ฌ ๋งค๊ฐ๋ณ์๋ก.
})[0];
}
var ์ธํฐ๋ฒ;
function ์ธํฐ๋ฒ๋ฉ์ด์ปค() {
์ธํฐ๋ฒ = setInterval(function() {//setInterval๊ณผ ์ด๋ฒคํธ๋ฆฌ์ค๋ ์ฝ๋ฐฑํจ์์ ๊ฐ์ ๋น๋๊ธฐ๋ ์ฝ๋ ๋ง์ง๋ง์ ์๋ค๊ณ ์๊ฐ
if(์ด๋ฏธ์ง์ขํ === ๋์
๋๋ฆฌ.๋ฐ์) {
์ด๋ฏธ์ง์ขํ = ๋์
๋๋ฆฌ.๊ฐ์;
} else if (์ด๋ฏธ์ง์ขํ === ๋์
๋๋ฆฌ.๊ฐ์) {
์ด๋ฏธ์ง์ขํ = ๋์
๋๋ฆฌ.๋ณด;
} else {
์ด๋ฏธ์ง์ขํ = ๋์
๋๋ฆฌ.๋ฐ์;
}
document.querySelector('#computer').style.background = 'url(https://en.pimg.jp/023/182/267/1/23182267.jpg) ' + ์ด๋ฏธ์ง์ขํ + ' 0 ';
},100);//0.1์ด๋ง๋ค ๊ณ์ ์คํํ๋ค.
}
์ธํฐ๋ฒ = ์ธํฐ๋ฒ๋ฉ์ด์ปค();
//๊ฐ์ ๋ฐ์ ๋ณด ๋ค ์ ํํ ์ ์๋ค.querySelectorAll์ ์ ์ฌ๋ฐฐ์ด์ฒ๋ผ ์ฌ์ฉํ์ฌ ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ ์ ์๋ค.
// for(var i = 0; i < document.querySelectorAll('.btn');i += 1) {
// document.querySelectorAll('.btn')[i].addEventListener('click',function(){
// console.log(this.textContent);
// });
// }
//์์ฒ๋ผ ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ ์๋ ์์ง๋ง querySelectorAlldms forEach๋ฅผ ์ง์ํ๋ค.
document.querySelectorAll('.btn').forEach(function(btn){
btn.addEventListener('click',function() {//๊ฐ์ 0 ๋ฐ์ -1 ๋ณด 1 ์ซ์๋ก ๋ง๋ค์ด์ ๊ท์น์ ๋ง๋ค์ด๋ด๋ฉด ์ฝ๋๊ฐ ์งง์์ง๋ค.
clearInterval(์ธํฐ๋ฒ);//setInterval์ ๋ฉ์ถ๋ค.
setTimeout(function() {
์ธํฐ๋ฒ๋ฉ์ด์ปค();
},1000);
var ๋์์ ํ = this.textContent;
console.log(๋์์ ํ,์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ));
//๊ฐ์๋ฐ์๋ณด ๋น๊ต
if(๋์์ ํ === '๊ฐ์' {
if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๊ฐ์') {
console.log('๋น๊ฒผ์ต๋๋ค');
} else if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๋ฐ์') {
console.log('์ก์ต๋๋คใ
ใ
');
} else {
console.log('์ด๊ฒผ์ต๋๋ค!!');
}
} else if(๋์์ ํ === '๋ฐ์') {
if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๊ฐ์') {
console.log('์ด๊ฒผ์ต๋๋ค!!');
} else if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๋ฐ์') {
console.log('๋น๊ฒผ์ต๋๋ค');
} else {
console.log('์ก์ต๋๋คใ
ใ
');
}
} else if(๋์์ ํ === '๋ณด') {
if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๊ฐ์') {
console.log('์ก์ต๋๋คใ
ใ
');
} else if(์ปดํจํฐ์์ ํ(์ด๋ฏธ์ง์ขํ) === '๋ฐ์') {
console.log('์ด๊ฒผ์ต๋๋ค');
} else {
console.log('๋น๊ฒผ์ต๋๋ค!!');
}
}
});
})
Last updated