blob: ee5e8013b9df6788f0961bcbb85faadf6f9910a9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
/*
* Generics for Duktape binding in NetSurf
*
* The result of this *MUST* be setting a NetSurf object only.
*
* That object will then be absorbed into the global object as a hidden
* object which is used by the rest of the bindings.
*/
var NetSurf = {
/* The make-proxy call for list-type objects */
makeListProxy: function(inner) {
return new Proxy(inner, {
has: function(target, key) {
if (typeof key == 'number') {
return (key >= 0) && (key < target.length);
} else {
return key in target;
}
},
get: function(target, key) {
if (typeof key == 'number') {
return target.item(key);
} else {
return target[key];
}
},
});
},
};
|