38 lines
458 B
JavaScript
38 lines
458 B
JavaScript
var p = {
|
|
m() {
|
|
this.name = 'p';
|
|
},
|
|
n() {
|
|
return 'name';
|
|
}
|
|
};
|
|
|
|
var p2 = {
|
|
m() {
|
|
this.name = 'p2';
|
|
}
|
|
};
|
|
|
|
var o = {
|
|
__proto__: p,
|
|
name: 'o',
|
|
m() {
|
|
this.inner = {
|
|
__proto__: p2,
|
|
[super.n()]: 'inner',
|
|
m() {
|
|
super.m();
|
|
}
|
|
};
|
|
super.m();
|
|
}
|
|
};
|
|
|
|
o.m();
|
|
assert.equal(o.name, 'p');
|
|
assert.equal(o.inner.name, 'inner');
|
|
|
|
o.inner.m();
|
|
assert.equal(o.name, 'p');
|
|
assert.equal(o.inner.name, 'p2');
|