User Guide

588 ActionScript classes
Note: For Flash Lite, if the shared object listener has not been invoked, the data property
could contain undefined values. For details, see the description of the
addListener()
method.
var items_array:Array = new Array(101, 346, 483);
var currentUserIsAdmin:Boolean = true;
var currentUserName:String = "Ramona";
var my_so:SharedObject = SharedObject.getLocal("superfoo");
my_so.data.itemNumbers = items_array;
my_so.data.adminPrivileges = currentUserIsAdmin;
my_so.data.userName = currentUserName;
for (var prop in my_so.data) {
trace(prop+": "+my_so.data[prop]);
}
soResult = "";
for (var prop in my_so.data) {
soResult += prop+": "+my_so.data[prop] +"\n";
}
result.text = soResult;
All attributes of a shared object's data property are saved if the object is persistent and the
shared object contains the following information:
userName: Ramona
adminPrivileges: true
itemNumbers: 101,346,483
Note: Do not assign values directly to the data property of a shared object (for example,
so.data = someValue). Flash ignores these assignments.
To delete attributes for local shared objects, use code such as
delete
so.data.attributeName
; setting an attribute to null or undefined for a local shared object
does not delete the attribute.
To c re at e private values for a shared object—values that are available only to the client
instance while the object is in use and are not stored with the object when it is closed—create
properties that are not named
data to store them, as shown in the following example:
var my_so:SharedObject = SharedObject.getLocal("superfoo");
my_so.favoriteColor = "blue";
my_so.favoriteNightClub = "The Bluenote Tavern";
my_so.favoriteSong = "My World is Blue";
for (var prop in my_so) {
trace(prop+": "+my_so[prop]);
}