Ich habe ein interessantes Experiment durchgeführt. Die meisten Leute im Internet verwenden Funktionen (ähnlich wie person.getName(), person.setName()). Natürlich ist dies ein allgemeiner Ansatz.
Aber in Nicht-IE-Browsern können Sie versuchen, den folgenden Code auszuführen:
view sourceprint?function Person()
{
var _name
,_age,_sex;
var _nameChanged = new Array(); ()
return _nameChanged; );
_nameChanged.push(value);
});
this.__defineGetter__(Name,function()
{
return _name;
});
this.__defineSetter__(Name,function(value)
{
if (this .NameChanged != null) { ged[f](value);
__defineGetter__(Age,function( )
{
return _age;
});
this.__defineSetter__(Age,function(value)
{
_age = value;
});
} Person.prototype = { get Sex () { return _sex}, set Sex(value) { _sex = value; } var person = new Person(); person.NameChanged = function () warning(Event 1); } person.NameChanged = function() { warning(Event 2); } person.Name = Treenew; person.Age = 22;
person.Sex = Manalert(The + person.Name + Age is + person. Alter + . Der Geschlechtswert ist + person.Sex); sehr elegante Sache. Aber haben Sie bezüglich des Multicast-Vorfalls gute Ideen?