Symbol.unscopables
JavaScript Symbol.unscopables属性
Java
Symbol.unscopables 符号是对象值,其继承的属性名称不包含在环境绑定中。
注意:
在无法作用域的对象中将属性设置为true会使它无法作用域,因此它不会出现在词法作用域变量中。
将属性设置为false使其具有适用范围,因此它将出现在词法作用域变量中。
语法
参数
对象
返回值
检查该变量是否出现在词法作用域变量中。
浏览器支持
浏览器 |
版本 |
Chrome |
32 |
Safari |
8 |
Firefox |
29 |
Opera |
19 |
示例1
//JavaScript to illustrate Symbol.toPrimitive
var obj = {
j: 1,
k: 2
};
obj[Symbol.unscopables] = {
//Setting a property to false will make it scopable
j: false,
//Setting a property to true in an unscopables object
k: true
};
with (obj) {
document.write(j);
}
//expected output: 1
输出:
示例2
<script>
//JavaScript to illustrate Symbol.toPrimitive
var obj = {
j: "lidihuo",
k: "Core Java"
};
obj[Symbol.unscopables] = {
//Setting a property to false will make it scopable
j: false,
//Setting a property to true in an unscopables object
k: true
};
with (obj) {
document.write(j);
}
//expected output: lidihuo
</script>
输出: