Baseline Widely available
Reflect æ¯ä¸ä¸ªå
ç½®ç对象ï¼å®æä¾æ¦æª JavaScript æä½çæ¹æ³ãè¿äºæ¹æ³ä¸ proxy handler çæ¹æ³ç¸åãReflect
䏿¯ä¸ä¸ªå½æ°å¯¹è±¡ï¼å æ¤å®æ¯ä¸å¯æé çã
ä¸å¤§å¤æ°å
¨å±å¯¹è±¡ä¸å Reflect
å¹¶éä¸ä¸ªæé 彿°ï¼æä»¥ä¸è½éè¿ new è¿ç®ç¬¦å¯¹å
¶è¿è¡è°ç¨ï¼æè
å° Reflect
对象ä½ä¸ºä¸ä¸ªå½æ°æ¥è°ç¨ãReflect
çææå±æ§åæ¹æ³é½æ¯éæçï¼å°±å Math
对象ï¼ã
Reflect
对象æä¾äºä»¥ä¸éææ¹æ³ï¼è¿äºæ¹æ³ä¸ proxy handler æ¹æ³çå½åç¸åã
Reflect.apply(target, thisArgument, argumentsList)
对ä¸ä¸ªå½æ°è¿è¡è°ç¨æä½ï¼åæ¶å¯ä»¥ä¼ å
¥ä¸ä¸ªæ°ç»ä½ä¸ºè°ç¨åæ°ãå Function.prototype.apply()
åè½ç±»ä¼¼ã
Reflect.construct(target, argumentsList[, newTarget])
对æé 彿°è¿è¡ new
æä½ï¼ç¸å½äºæ§è¡ new target(...args)
ã
Reflect.defineProperty(target, propertyKey, attributes)
å Object.defineProperty()
类似ãå¦æè®¾ç½®æåå°±ä¼è¿å true
Reflect.deleteProperty(target, propertyKey)
ä½ä¸ºå½æ°çdelete
æä½ç¬¦ï¼ç¸å½äºæ§è¡ delete target[name]
ã
Reflect.get(target, propertyKey[, receiver])
è·åå¯¹è±¡èº«ä¸æä¸ªå±æ§çå¼ï¼ç±»ä¼¼äº target[name]
ã
Reflect.getOwnPropertyDescriptor(target, propertyKey)
ç±»ä¼¼äº Object.getOwnPropertyDescriptor()
ãå¦æå¯¹è±¡ä¸åå¨è¯¥å±æ§ï¼åè¿å对åºç屿§æè¿°ç¬¦ï¼å¦åè¿å undefined
ã
Reflect.getPrototypeOf(target)
ç±»ä¼¼äº Object.getPrototypeOf()
ã
Reflect.has(target, propertyKey)
夿ä¸ä¸ªå¯¹è±¡æ¯å¦åå¨æä¸ªå±æ§ï¼å in
è¿ç®ç¬¦ çåè½å®å
¨ç¸åã
Reflect.isExtensible(target)
ç±»ä¼¼äº Object.isExtensible()
.
Reflect.ownKeys(target)
è¿åä¸ä¸ªå
嫿æèªèº«å±æ§ï¼ä¸å
å«ç»§æ¿å±æ§ï¼çæ°ç»ã(ç±»ä¼¼äº Object.keys()
, ä½ä¸ä¼åenumerable
å½±å).
Reflect.preventExtensions(target)
ç±»ä¼¼äº Object.preventExtensions()
ãè¿åä¸ä¸ªBoolean
ã
Reflect.set(target, propertyKey, value[, receiver])
å°å¼åé
ç»å±æ§ç彿°ãè¿åä¸ä¸ªBoolean
ï¼å¦ææ´æ°æåï¼åè¿åtrue
ã
Reflect.setPrototypeOf(target, prototype)
设置对象ååç彿°ãè¿åä¸ä¸ª Boolean
ï¼å¦ææ´æ°æåï¼åè¿å true
ã
const duck = { name: 'Maurice', color: 'white', greeting: function() { console.log(`Quaaaack! My name is ${this.name}`); } } Reflect.has(duck, 'color'); // true Reflect.has(duck, 'haircut'); // falseè¿åè¿ä¸ªå¯¹è±¡èªèº«ç屿§
Reflect.ownKeys(duck); // [ "name", "color", "greeting" ]为è¿ä¸ªå¯¹è±¡æ·»å ä¸ä¸ªæ°ç屿§
Reflect.set(duck, 'eyes', 'black'); // returns "true" if successful // "duck" now contains the property "eyes: 'black'"è§è æµè§å¨å ¼å®¹æ§ åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4