通常讨论都会将continue与break、return放一起讨论,本文就只讨论continue。
据说不建议使用continue,会有性能问题,但是continue是有其使用场景的。

比如上图,想便利取出其中的内容,单行注释与色值带注释单独保存,并且注释与色值名有关联相关性,方便再次组合保存成文件数据。
// 读取文件数据代码 略
function readFile(url){
// ...
};
// 读取文件数据
let fileData = readFile("text.txt");
// 以换行符\r\n进行字符串拆分,每一行成为一项
let fileArray = fileData.split('\r\n');
// 对数组进行遍历,去除空项
for(let i=0;i<fileArray.length;i++){
if(fileArray[i] === '' || fileArray[i] == null || typeof(fileArray[i])===undefined){
fileArray.splice(i,1);
i=i-1;
}
};
// 此时fileArray数组去除了空值,每一项注释 和 名称 注释夹杂在一起,再次遍历数组,进行归类
// 声明一个空数组,用来保存数据,保存的方式是:新建一个对象,单独行的注释作为下标,该注释下的色值名保存在对象内作为key,注释作为该key的值,如下:
[
'第一行':{
primaryColor:'主色'
},
'第二行':{
bgColor:'背景色'
}
]
// 保存成该格式,当遍历到单独行注释,单独处理,作为索引下标,然后continue跳过,处理下一项
let params=[];
// 临时变量
let tempStr;
for(let i=0;i<fileArray.length;i++){
if(fileArray[i].substr(0,2) === '//'){
// 说明是单行注释 截取出内容
tempStr = fileArray[i].substr(2+1);
params[tempStr] = {};
// 处理完该项 continue跳过
continue;
};
if(fileArray[i].substr(0,2) === '--'){
let colorName = fileArray[i].substring(2,fileArray[i].indexOf('//')).replace(' ','');
let colorNameExplain = fileArray[i].substr(fileArray[i].indexOf('//')+1).replace(' ','');
params[tempStr][colorName] = colorNameExplain;
}
};
以上,可以按照大类注释进行分类,同时也保存了全部数据,并保持之间的关系,可以用于再次存数据使用,按照关联性进行保存。
本文专注于探讨JavaScript中的continue语句。尽管有时被认为可能影响性能,continue在特定场景下仍具价值。例如,在处理复杂数据结构时,它可以用来跳过不需要处理的部分,如注释和色值,同时保留数据间的关联性,便于后续的组合和存储。

被折叠的 条评论
为什么被折叠?



