이것은이 웹 사이트에서 물어 보는 첫 번째 질문 중 하나입니다. 잘못된 방향으로 접근하는지 알려주세요.setInterval()을 사용하면 "if"에서 나이가 어떻게 증가합니까?
어쨌든, 내 obj (dog)를 만들었습니다. javascript의 setInterval 기능을 사용하여 나이 (5 세)부터 시작하여 개가 나이를 계산하는 "live"함수가 있습니다. 따라서 "dog.live()"를 입력하여 함수를 호출하면 강아지의 나이가 15에 도달 할 때까지 함수의 "if"면을 수행 한 다음 함수의 "else"부분을 수행하도록 진행합니다 개가 죽은 지 얼마나 지났습니까?
var dog = {
age : 5,
live : function() {
setInterval(function() {
var timer = this.age += 1;
if (this.age < 15) {
console.log("Dog lives another day at age " + this.age);
} else {
console.log("Dog has been dead for " + (timer - 15) + " years");
}
}.bind(dog), 1000);
}
}
dog.live();
"Dog lives another day at age 6"
"Dog lives another day at age 7"
...
"Dog has been dead for 0 years"
"Dog has been dead for 1 years"
지금, 나는 setInterval을 내부 함수의 "다른"부분에서, 그것은 "타이머"변수를 사용하여 나이를 증가하는 방법, 이해합니다. 그러나 나는 개가 몇 살인지를 알려주는 함수의 "if"부분이 어떻게 증가 하는지를 잘 모르고있다. 내가 말할 수있는 한, "var timer = this.age + = 1;"때문에 자체적으로 증가하지는 않습니다. 그냥 변수를 선언하고 아무것도 자체 수행하지 않습니다. 함수의 "if"측면을 수행하는 동안 강아지의 나이가 증가하는 방식을 알고 싶습니다.
이 질문에 잘못된 길을 물어 보는 경우 나 이와 같은 질문이 허용되지 않는 경우 나에게 알려 주시면 언제든지 저의 향후 질문을 개선하고 개선하겠습니다. 감사합니다.
'+ ='변수를 증가시킵니다. 그 줄에 추가로'= '가 있기 때문에 혼란 스럽습니다 ... – deceze
흠, 제가 당신이 + = 변수를 증가시키는 것을 이해했으면 좋겠습니다. 불행히도 나는 아직도 조금 길을 잃었습니다. – yunjae123