我试图了解while和for每个之间的区别。这两个示例都可以使用,似乎唯一真正的区别是首选项。也许是在这种情况下,但是在他们的情况下,一个人比另一个人客观上要好吗?
var myWindow = window.open("", '_blank');
if (myWindow != undefined) {
window.setTimeout(function() {
myWindow.document.write(text);
myWindow.focus();
myWindow.document.title = name;
}, 100);
} else {
showWarning({
message: 'popup is blocked')
});
} // here
VS。
<?php $rows = get_field('repeater_field_name');
if($rows)
{
echo '<ul>';
foreach($rows as $row)
{
echo '<li>sub_field_1 = ' . $row['sub_field_1'] . ', sub_field_2 = ' . $row['sub_field_2'] .', etc</li>';
}
echo '</ul>';
} ?>
答案 0 :(得分:2)
两者都是循环构造,正如您所提到的,偏好是选择的主要原因之一。但有时以一种格式比另一种格式更容易思考。
例如如果我们想不停地运行循环并根据某种条件中断循环,那么那将是一个更具表现力和可读性的选择。
while (true) {
if condition {
break;
}
}
另外,当我们想逐行读取文件直到文件结尾时,占主导地位:
while (($line = fgets($handle)) !== false) {
}
但有时for或foreach占主导地位,例如遍历一组记录/列表。
foreach (records as key => value) {
}
另一方面,当底层循环源即将在循环内更改时,“ while”比“ for”更可取。
答案 1 :(得分:0)