ใครบ้างมีคำอธิบายที่ดีเกี่ยวกับตัวดำเนินการ as
สำหรับฉันแล้วดูเหมือนว่าการใช้ as มักจะดีกว่าแทนที่จะสร้างอินสแตนซ์ของวัตถุใหม่
แต่มีบางสถานการณ์ที่โอเปอเรเตอร์นี้ทำให้ฉันผิดหวัง ตัวอย่างเช่น เมื่อโหลดไฟล์ข้อความในรูปแบบ XML ผ่าน URLLoader ก>:
private function completeHandler(event:Event):void {
var loader:URLLoader = URLLoader(event.target);
trace("completeHandler: " + loader.data);
var x:XML = new XML(loader.data);
trace("x=" + x);
}
ทำไมฉันต้องใช้ตัวสร้างที่นี่? เหตุใดฉันจึงไม่สามารถพูด var x:XML = loader.data as XML; และบันทึกหน่วยความจำบางส่วนไม่ได้
ขอบคุณสำหรับข้อมูลเชิงลึก! อเล็กซ์