DM
Size: a a a
DM
u
К
u
DM
u
К
DM
var browser = {
foo: () => console.log('foo'),
}
class OurBrowser {
answer = 42
constructor() {
return new Proxy(this, {
get: function(obj, prop) {
if (typeof browser[prop] === 'function') {
return function(...args) {
console.log(`browser.${prop}(${args}) called`)
return browser[prop](...args)
}
} else {
return obj[prop]
}
}
})
}
}
const ob = new OurBrowser()
console.log(ob.answer)
console.log(ob.answer2)
ob.foo()
DM
u
DM
DM
DM
DM
DM
DM
function foo() {дает нам
console.log('foo')
return 42
}
function bar() {
console.log('foo() was called')
return foo()
}
console.log(bar())
foo() was calledкак получить
foo
42
foo???
foo() was called
42
К
DM
К
DM