Samurai 依赖于 ninja.chirp,但我删除了对 ninja.chirp 的引用。为什么此代码继续有效?
var ninja = {
chirp: function (n) {
return n > 1 ? this.chirp(n - 1) + '-chirp' : 'chirp';
}
};
function chirp(n) {
return n > 1 ? chirp(n-1) + '-chirp' : 'chirp';
}
var samurai = {
chirp: ninja.chirp
};
ninja = {};
try {
console.log(samurai.chirp(3));
}
catch (e) {
console.log("no can do.");
}
</script>