原文中文,约2400字,阅读约需6分钟。
📝
内容提要
本文提供了一种新的有趣方法,可以滥用 JavaScript 功能以产生意想不到的结果,通过模板字符串可以传递多个参数,使用 setTimeout.call、[].sort.call 和 Reflect.apply 可以调用函数,使用 window.name 来隐藏有效载荷。
🎯
关键要点
-
文章介绍了一种利用 JavaScript 特性产生意想不到结果的新方法。
-
通过模板字符串可以传递多个参数,使用 setTimeout.call、[].sort.call 和 Reflect.apply 来调用函数。
-
使用 window.name 来隐藏有效载荷,增强了对 JavaScript 的理解。
-
标记模板字符串可以将字符串作为数组传递给函数,且占位符会作为新参数添加。
-
可以使用自定义函数来观察参数传递的行为。
-
setTimeout 的第一个参数可以通过 setTimeout.call 来绕过限制,但需要正确的上下文。
-
使用 [].sort 和其他数组方法可以避免非法调用错误。
-
Reflect.apply 方法可以用于调用几乎任何函数,并且可以通过 window.name 隐藏有效载荷。
-
结论是模板字符串支持这种行为,允许开发者探索 JavaScript 的新用法。
🏷️