sam*_*old 0 apache-flex air adobe actionscript-3
我正在将数据写入新的ByteArray并将其存储到LocalStore中
var ba:ByteArray = new ByteArray;
ba.writeObject(theobject);
EncryptedLocalStore.setItem(MY_VAL_STORE, ba); //bytes in local store
Run Code Online (Sandbox Code Playgroud)
作为一个实验,我试图将前两行变成一行,所以我使用这种语法(我基本上将新的ByteArray放在括号中并立即使用它).
var ba:ByteArray = (new ByteArray).writeObject(theobject) as ByteArray;
EncryptedLocalStore.setItem(MY_VAL_STORE, ba); //bytes in local store
Run Code Online (Sandbox Code Playgroud)
但这使我的AIR应用程序在运行时崩溃.如果我回到2行,它工作正常.我意识到这不是什么大问题,但我很好奇为什么这种创造性的语法不起作用.有任何想法吗?
注意:在1行版本中,如果我不添加as ByteArray,它会抱怨我正在尝试使用类型void和ByteArray.