Canvas 和 SVG 有什么区别?
What is the difference between canvas and SVG?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
参考答案摘要
Canvas 是基于像素的位图渲染(raster),通过 JS 以命令式 API 绘制,适合高频重绘、性能敏感的动态场景(如游戏、粒子动画)。但放大时可能变糊。 SVG 是矢量图(vector)且声明式,图形本身是 DOM 元素。它天然分辨率无关、缩放清晰,也更易于样式化与可访问性/SEO 处理。但当图形元素非常多时,DOM 开销可能导致性能问题。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。