Javascript 在for的循环中循环
我正在处理一个代码,我有一个问题: for的循环与while不起作用 这意味着在i=0运行后,执行脚本,然后代码停止。 期望值:代码可以在i=0,1,2,3等情况下持续运行。 因此,我如何修改代码,使之像那样工作,请帮助,非常感谢Javascript 在for的循环中循环,javascript,loops,Javascript,Loops,我正在处理一个代码,我有一个问题: for的循环与while不起作用 这意味着在i=0运行后,执行脚本,然后代码停止。 期望值:代码可以在i=0,1,2,3等情况下持续运行。 因此,我如何修改代码,使之像那样工作,请帮助,非常感谢 function FOLDER\u SCAN\u ONLY(){ //列出文件夹中的文件夹 var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“扫描结果”) var sheet=Spreadshee
function FOLDER\u SCAN\u ONLY(){
//列出文件夹中的文件夹
var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“扫描结果”)
var sheet=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“文件夹扫描”);
var startRow=2;
var numRows=sheet.getLastRow();
var dataRange=sheet.getRange(startRow,1,numRows,sheet.getLastColumn());
var data=dataRange.getValues();
对于(变量i=0;数据中的i;i++){
var rowData=数据[i];
如果(!rowData[1])继续;
如果(行数据[2]!=“确定”)继续;
如果(行数据[3]!='')继续;
var folder_id=rowData[1];
var parent=DriveApp.getFolderById(文件夹id)
var childFolders=parent.getFolders();
while(childFolders.hasNext()){
var childFolder=childFolders.next()
风险值数据=[
childFolder.getName(),
childFolder.getUrl(),
childFolder.getId(),
childFolder.getParents().next().getName()
];
//写
ss.appendRow(数据)
sheet.getRange(2+i,4).setValue('done'))
}
}
}
您可以使用这两个循环,但它们的行为可能与您预期的不同
function forWhileLoop(){
for (let i=0; i < data.length; i++){
loop = true
console.log(`processing: ${i}`)
while (loop == true){
console.log(`loop is ${loop}`)
loop = false
console.log(`loop is ${loop}`)
}
}
console.log('all done')
}
forWhileLoop()
// Results in
processing: 0
loop is true
loop is false
processing: 1
loop is true
loop is false
processing: 2
loop is true
loop is false
processing: 3
loop is true
loop is false
processing: 4
loop is true
loop is false
processing: 5
loop is true
loop is false
processing: 6
loop is true
loop is false
processing: 7
loop is true
loop is false
processing: 8
loop is true
loop is false
processing: 9
loop is true
loop is false
all done
https://repl.it/repls/EnormousNegligibleTechnology
用于whileloop()的函数{
for(设i=0;i
您可以使用这两个循环,但它们的行为可能与您预期的不同
function forWhileLoop(){
for (let i=0; i < data.length; i++){
loop = true
console.log(`processing: ${i}`)
while (loop == true){
console.log(`loop is ${loop}`)
loop = false
console.log(`loop is ${loop}`)
}
}
console.log('all done')
}
forWhileLoop()
// Results in
processing: 0
loop is true
loop is false
processing: 1
loop is true
loop is false
processing: 2
loop is true
loop is false
processing: 3
loop is true
loop is false
processing: 4
loop is true
loop is false
processing: 5
loop is true
loop is false
processing: 6
loop is true
loop is false
processing: 7
loop is true
loop is false
processing: 8
loop is true
loop is false
processing: 9
loop is true
loop is false
all done
https://repl.it/repls/EnormousNegligibleTechnology
用于whileloop()的函数{
for(设i=0;i
while循环仅在条件为真时运行,但它将在for循环中每个周期至少检查一次。如果希望它每次都运行,可以将其更改为do-while循环。我不确定你想要完成什么,但是你可以在for循环中加入while循环
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let bool = true;
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}
}
如您所见,while循环将运行for循环的每个周期——假设其条件为true。如果该条件在第一个while循环中变为false,但再也不会变为true,则将在for循环的所有后续循环中跳过while循环
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let bool = true;
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}
}
例如,如果我们稍微更改代码
let bool = true;
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}
while循环将仅在条件为true时运行,但它将在for循环的每个周期中至少检查一次。如果希望它每次都运行,可以将其更改为do-while循环。我不确定你想要完成什么,但是你可以在for循环中加入while循环
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let bool = true;
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}
}
如您所见,while循环将运行for循环的每个周期——假设其条件为true。如果该条件在第一个while循环中变为false,但再也不会变为true,则将在for循环的所有后续循环中跳过while循环
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let bool = true;
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}
}
例如,如果我们稍微更改代码
let bool = true;
for(let i = 0; i < 5; i++){
console.log('Starting a cycle');
let value = 0;
while(bool){
console.log('While loop');
if(value === 3){
bool = false;
} else {
value += 1;
}
}