当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript handler.has()用法及代码示例


handler.has() 方法用于 "hide" 任何你想要的属性。这是操作员的陷阱。如果您希望访问该属性,则返回布尔值 true,否则返回 false 如果原始对象中存在或不存在该键。

用法

has:function(target, prop)

参数

target:目标对象。

prop:检查是否存在的属性。

返回值

返回一个布尔值。

浏览器支持

Chrome 49
Edge 12
Firefox 18
Opera 36

例子1

const x = { f:10 };
const proxy = new Proxy(x, {
  has:function(target, name) {
   document.writeln('in has');
     //expected output:in has
 return name in target;
  }
});
document.writeln('f' in proxy);
//expected output:true

输出:

in has true

例子2

var x={hoo:1}
var xyz = new Proxy(x,  {
  has:function(target, key) {
    if(key == "a") return false;
      return true;
    }
  }
)
var x= ("a" in xyz)	
var y = ("b" in xyz)	
document.write("a in d:" +x)
//expected output:a in d:false
document.write('<br/>');
document.write("b in d:" +y) 
//expected output:b in d:true

输出:

a in d:false
b in d:true

例子3

var s={
  voo:1
}
var p = new Proxy(s, {
  has:function(target, prop) {
    document.writeln('called:' + prop);
    return false;
  }
});
document.writeln('a' in p); 
//expected output:called:a false

输出:

called:a false






相关用法


注:本文由纯净天空筛选整理自 JavaScript handler.has() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。