12.3.8 删除数据项

  共享对象写入磁盘后,其数值便被保存。如果打开共享对象,修改其中的一些项目,则未被操作的项目将会被延续保存。

例如,下面的代码在磁盘上建立了一个包含五个数据项目的数据共享对象:

var shareobj:SharedObject = SharedObject.getLocal("endsgame""/");

 

shareobj.data.bname="Ender's name";

shareobj.data.price=29.6;

shareobj.data.isOrigin=false;

shareobj.data.sellurl=new URLRequest("http://boookstore");

shareobj.data.totalpage=344;

如果在另一个程序中打开该数据共享对象,并修改其中的两个数据项目,另外新建一个项目。

var shareobj:SharedObject = SharedObject.getLocal("endsgame""/");

//修改

shareobj.data.bname="Jacks Dream";

shareobj.data.price=18.5;

//新建项目

shareobj.data.transLang="Spanish";

在最后执行数据写入时,并非仅仅写入涉及到的三个项目,而是将位操作的项目与操作的项目一同写入。如果读取此数据共享对象的全部项目,则结果如下:

var shareobj:SharedObject = SharedObject.getLocal("endsgame""/");

trace(shareobj.size);

for (var foo:String in shareobj.data) {

         trace("Item "+foo+" :"+shareobj.data[foo]);

}

//代码输出:

208

Item totalpage :344

Item transLang :Spanish

Item bname :Jacks Dream

Item isOrigin :false

Item sellurl :[object Object]

Item price :18.5

为了删除不需要的项目,应该对这些项目调用delete关键字。下面的代码删除数据共享对象中的指定项目项目:

delete shareobj.data.sellurl;

delete shareobj.data.totalpage;

或者调用clear()方法,清空一个数据共享对象。调用clear()方法后,数据共享对象的内存和磁盘数据都会被清空。

shareobj.clear();

trace(shareobj.size);// output: 0

 

shareobj.data.price=18.5;

shareobj.data.transLang="Spanish";

trace(shareobj.size); //output : 66

在清空一个数据共享对象后,其内部的数据消失了,但是该对象依然存在,可以使用原来的引用标识继续添加新的属性。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值