6
votes

Les prototypes JavaScript ont-ils quelque chose d'équivalent à __index & __Newindex de Lua?

Je veux définir un comportement sur des objets JavaScript qui commence lorsque l'attribut / méthode référencé n'existe pas. En Lua, vous pouvez le faire avec des métabiles et des méthodes __ index et __Newindex . xxx

donc je me demande s'il y a quelque chose de similaire dans JavaScript.

Ce que j'essaie d'atteindre est une interface RPC générique qui fonctionne comme ceci (non valide Javascript): xxx

alors comment puis-je faire cela?

peut-il même être fait?


0 commentaires

4 Réponses :


1
votes

Je suppose que votre besoin réel est plus compliqué que l'exemple, car vous ne faites rien avec les paramètres que vous passez à Servermethoda et serveurmethodb , et sinon vous ferait juste quelque chose comme xxx


0 commentaires


5
votes

1 commentaires

Merci pour les informations, malheureusement, j'ai besoin de compatibilité croisée croisée, mais bien de savoir, peut-être que d'autres suivront la suite



2
votes

Demandé 8 ans, il y a 8 mois p>

Maintenant, nous pouvons utiliser "proxy" p>

Proxy - JavaScript | MDN P>

Un moyen simple d'utiliser: p>

- Code LUA P>

let o= new Proxy({},{
    get: function (target, key, receiver) {
            let ret = Reflect.get(target, key, receiver);
            if (!target.hasOwnProperty(key)){
                console.log("tried to undefined key "+key);
            }
            return ret;
        }
})
>> undefined

o.a
>> VM383:5 tried to undefined key a
>> undefined

o.a = 1
>> 1

o.a
>> 1

0 commentaires