Canvas 主要是用笔刷来绘制 2D 图形SVG 主要是用标签来绘制不规则矢量图的相同点: 都是主要用来画 2D 图形的不同点: Canvas 画的是位图,SVG 画的是矢量图SVG 节点过多时渲染慢,Canvas 性能更好一点,但写起来更复杂SVG 支持分层和事件,Canvas 不支持,但是可以用库实现