三者可表示“当…时候”,区别如下:
1. 若主句表示的是一个短暂性动作,从句表示的是一个持续性动作,三者都可用:
He fell asleep when [while, as] he was reading. 他看书时睡着了。
【注】as 用于引出一个持续性动词表示“在…期间”时,其谓语通常不能是那些不用于进行时态的动词(如 be, seem, love, want, agree, see, know, have 等),所以下面一句中的 while 不能换为 as:
A:I’m going to the post office. 我要去邮局。
B:While you’re there, can you get me some stamps? 当你在邮局时,能帮我买几张邮票吗?
2. 若主、从句表示两个同时进行的持续性动作,且强调主句表示的动作延续到从句所指的整个时间,通常要用 while:
I kept silent while he was writing. 在他写的时候,我默不作声。
但是,若主从句表示的两个同时进行的动作含有“一边…一边…”之意思,通常用 as:
She sang as she went along. 她边走边唱。
3. 若从句是一个短暂性动作,主句是一个持续性动作,可用 as / when 但不用 while:
It was raining hard when [as] we arrived. 我们到达时正下着大雨。
4. 若主从句表示的是两个同时(或几乎同时)发生的短暂性动作,用 as / when:
I thought of it just when [as] you opened your mouth. 就在你要说的时候,我也想到了。
5. 若要表示两个正在发展变化的情况,相当于汉语的“随着”,一般用 as:
Things are getting better and better as time goes on. 随着时间的推移,情况越来越好。
As it grew darker, it became colder. 天色越晚,天气越冷。
6. 表示“每当…的时候”(暗示一种规律性),一般要用 when:
It’s cold when it snows. 下雪时天冷。
He smiles when you praise him. 你夸奖他时他总是笑笑。
7. 若主从句所表示的动作不是同时发生,而是有先后顺序时,一般要用 when:
I will go home when he comes back. 他回来时,我就回家去。
8. when 可用作并列连词,表示“这时(突然)”;while 也可以用作并列连词,表示“而”、“却”(表示对比);但 as 则没有类似用法:
We were about to start when it began to rain. 我们正要出发,这时天开始下雨了。
He likes coffee, while she likes tea. 他喜欢咖啡,而她却喜欢茶。