情形:在用removeChild移除显示对象时是否需要判断它已被addChild添加
移除一个显示对象s:
- if(someDisplayObject.contains(s)){
- someDisplayObject.removeChild(s);
- }
多个时:
- if(someDisplayObject.contains(s1)){
- someDisplayObject.removeChild(s1);
- }
- if(someDisplayObject.contains(s2)){
- someDisplayObject.removeChild(s2);
- }
- if(someDisplayObject.contains(s3)){
- someDisplayObject.removeChild(s3);
- }
- ...
偷懒如下:
- try{
- someDisplayObject.removeChild(s1);
- someDisplayObject.removeChild(s2);
- someDisplayObject.removeChild(s3);
- ...
- }catch(e){
- }
若不加判断就removeChild不在显示列表中的对象时系统会抛出异常,而这里咱就try它一下还不catch这个所谓的异常,o了。
结果:因为抛出异常时,程序控制会被转移到catch块。失败~~