past 30 years have witnessed为什么用have

过去三十年代表着时间一直持续到现在,用现在完成时,years是复数,所以用have。

witness

英?['w?tn?s]? ? ?美?['w?tn?s]? ? 

n.?目击者;证人;vt.?目击;经历;见证;出席;观察;vi.?证明;为(宗教信仰)做见证。

Did anyone witness the traffic accident?

有谁目击了这场交通事故?

look,see,watch,observe,witness区别:

1、look侧重“看”的动作。

2、see指看见。

3、watch指用眼睛跟随某物,以便对每一个变化、运动等进行观察。

4、observe侧重以客观的态度进行观察。

5、witness指当场看见,亲眼看见。