JS较底层的用法
在 JavaScript 中,“偏底层”的用法通常是指更接近语言核心、规范、底层机制的特性。这些用法不是日常开发中最常见的,但对理解语言原理、优化性能或构建框架、库非常重要。下面是一些常见的“偏底层”用法或特性
1. 对象属性底层操作:Object.defineProperty()
可以定义属性的细粒度行为(是否可枚举、是否可写、是否可配置)
const obj = {
};
Object.defineProperty(obj, 'hidden', {
value: 'secret',
enumerable: false,
writable: false,
configurable: false
});
2. 原型链控制:Object.create() 和手动设置 proto
const proto = {
greet() {
console.log('hi'); } };
const obj = Object.create(proto);
obj.greet(); // hi
3. 拦截对象操作:Proxy 和 Reflect
const target = {
};
const proxy = new Proxy(target, {
get(obj, prop) {
console.log(`访问属性 ${
prop}`);
return Reflect.get(obj, prop);
}
});
proxy