我有一个类可以是一个图像(即IMG元素)或画布。当我将它序列化为JSON时,我需要将其转换为文本字符串。如果它是一个Canvas,那么我可以调用Canvas#toDataURL。但是如果它是一个图像,我首先需要将它绘制到Canvas with Canvas#drawImage,然后使用toDataURL序列化该画布。如何判断javascript对象是图片还是画布?
那么如何确定对象是Canvas还是Image? (因为Canvas#drawImage能够接受Image或Canvas对象作为参数,所以必须有办法。)
我已经看到有些程序员测试某些属性或函数的存在来确定类,但是我想知道是否有更聪明的方式,如果这些对象提供的API发生变化,这种方式不会中断。
谢谢。我是一个错过了他的思考的被宠坏的Java程序员。 – 2009-11-19 03:50:50