document.write('
ABDCBDCB
[解析] for循环语句的基本结构为:
 for(表达式1;表达式2;表达式3)
 {
 循环体
 }
 它的执行过程如下:
 1)首先执行初始化语句:表达式1(只会被执行一次)。
 2)然后执行表达式2,如果表达式2的结果为最rise,则结束循环,否则,执行循环体,然后执行表达式3。
 3)循环执行步骤2),直到表达式2的结果为false时,则退出循环,或者循环体内有退出循环的语句(return或break)。
 对于本题而言,执行步骤如下:
 1)首先执行foo(\'A\'),输出字符\'A\'。
 2)接着执行foo(\'B\')&&(i<2),输出字符\'B\',且这个表达式的结果为true,因此,执行循环体i++(执行后i的值变为1),接着
输出字符\'D\',然后执行foo(\'C\'),输出字符\'C\'。
 3)重复第2)步,由于此时i的值为1,所以循环条件为true,接着会输出字符\'B\'、\'D\'、\'C\'。结束这一次循环后,i的值变为2;
然后继续执行循环条件foo(\'B\')&&(i<2),首先执行。foo(\'B\')输出字符\'B\',因为foo(\'B\')执行的结果为true,所以,需要继续执
行判断语句i<2,显然返回值为false,此时循环结束。

 因此,程序的运行结果为ABDCBDCB。 

');