Я мог бы найти ошибку в ColdFusion 2016. У меня есть две функции. Первая имеет цикл, который выполняет итерацию от 1 до n и помещает возвращаемое значение второй функции, которая также является массивом, в массив. Я заметил, что; значение индекса равно 1, вызывается функция и помещается значение в массив, а значение индекса является конечным значением цикла. Это ошибка?
<cfscript>
public array function fnc1(required array p1, required array p2, required numeric pSize, required numeric qSize, required numeric dSize){
iterationNum = pSize/2;
point = randRange(1, qSize-1);
for(i = 1; i <= iterationNum; i++){
writeOutput(i); // prints: 1
pop[i] = fnc2(p1[i], p2[i], point);
writeOutput(i); // prints: iterationNum value
writeDump(var = pop[i], label = "pop-"&i);
}
writeDump(var = pop, label="pop");
}
public array function fnc2(required array p1, required array p2, required numeric point){
n = arrayLen(p1);
concatArr = arrayNew(1);
for(i = 1; i <= point; i++){
concatArr[i] = p1[i];
}
for(i = point + 1; i <= n; i++){
concatArr[i] = p2[i];
}
writeDump(var=concatArr, label="Concated Array");
return concatArr;
}
</cfscript>
i
создается в fnc1 и перезаписывается в fnc2. - person Dan Bracuk   schedule 24.02.2018