Я пытаюсь понять циклы полностью.Я провел свое исследование и немного понял.
Я знаю такие циклы, как
for(var i = 0; i < 5; i++) { console.log(i) }
Это означает, что продолжать увеличивать i
, начиная с 0
, так как лог как i
меньше5
Я также знаю такие циклы, как
var a = [];
a[5] = 5;
for (var x in a) {
console.log(x);
}
Что означает цикл для x в a и будет записывать 5;
Искал игру вокруг исследования, а затем я вижучто-то вроде
function aNumber() {
var aInt = 521;
var intString = aInt.toString();
var intLength = intString.length;
var result = 0;
for (var i in intString) {
result += Math.pow((+intString[i]), intLength);
}
console.log(result);
//...
}
aNumber();
Я понимаю преобразование int
в string
.Но петля для меня нова.Я знаю, что функция Math.pow()
делает так, как она принимает параметры (Math.pow (2,2) совпадает с 2 ** 2) и +
в +intString
передает string
как int
Что я на самом деле не понимаю, так это вот эта часть
result += Math.pow((+intString[i]), intLength);
Это заставляет целое loop
выглядеть запутанным.
Может кто-нибудь помочь мне объяснить это в простых терминах, как я объяснилдругие?Спасибо