JavaScript this 上下文测试器 - 不同调用方式下的指向
编写函数并选择调用方式(普通、方法、call、apply、箭头等),输出 this 的值。
UD5工具箱
[[OuterEnv]]引用向上一级作用域查找,直到全局作用域。如果全局作用域也找不到,在严格模式下会抛出ReferenceError,非严格模式下则会隐式创建全局变量。这个逐级向上的查找路径就是作用域链。
var、let、const、函数声明等)和对象环境记录(用于with语句和全局对象)。本工具可视化的正是每个作用域的环境记录中的变量绑定。
var 声明的变量属于函数作用域,在循环中使用var会导致所有闭包共享同一个变量(经典循环陷阱)。let/const 声明的变量属于块级作用域,每次循环迭代都会创建一个新的绑定,因此每个闭包捕获的是独立的值。使用本工具分别分析for (var i=...)和for (let i=...)的代码,可以直观看到作用域结构的差异。
null),或使用WeakMap等弱引用结构来管理闭包相关数据。
编写函数并选择调用方式(普通、方法、call、apply、箭头等),输出 this 的值。
输入嵌套对象和取值路径,测试?.可选链和??空值合并运算的结果,学习JS新特性。
并列播放所有CSS内置缓动函数(ease, linear等)的动画效果,方便对比选择。
粘贴JSON对象,生成可折叠的树形视图,点击节点复制其键值路径,方便调试。
在浏览器中即时测试for、forEach、map、for-of等循环的执行速度,帮助选择最优写法。
创建一个 Proxy,定义各种陷阱函数,操作对象时实时显示被拦截的属性和行为。
粘贴带参数的URL,以表格形式列出所有Query参数与值。
获取和释放命名锁,观察多个标签页如何排队等待资源访问。
触发系统原生分享,支持分享文本、链接与文件,检查浏览器兼容性与支持级别。
在页面上叠加可拖拽的半透明网格线,辅助网格布局对齐。
编写带有伪类的选择器,实时高亮匹配的HTML元素,探索现代CSS选择器的能力。
解析 JSON 字符串或粘贴对象字面量,检测是否存在循环引用并指出路径,辅助调试。
构建 Promise 链并显示每个 then/catch 的执行时间与状态,帮助理解微任务调度。
将 JSON 数组或对象渲染为可交互的 HTML 表格,支持嵌套展开、列排序和搜索。
应用 contain 的各种值(layout, paint, size),直观对比开启前后渲染和布局的变化。
显示当前页面的JavaScript堆内存快照和使用限制,辅助内存泄漏调试。
粘贴PHP print_r或var_export输出,智能解析为有效的JSON。
拖拽两控制点精细微调CSS `cubic-bezier()` 曲线并对比预设函数效果。
定义多个 CSS 自定义属性,通过滑块或颜色选择器实时修改并查看页面整体风格变化。
输入新旧JSON,并排展示增删改的行级差异,辅助接口变动追踪。
通过滑块和开关调整 Flex 容器和子项的所有 CSS 属性,实时观察布局变化,理解弹性盒子。
监听全局错误事件和未处理的 Promise 拒绝,在仪表板上展示错误堆栈和发生次数。
输入包名,通过NPM Registry API查询是否已被占用,并显示近似的包名建议。
在可视化环境中编写JSONPath或JMESPath表达式,实时高亮匹配结果并查看路径提取逻辑。
粘贴结构化数据代码,模拟Google结构化数据测试,检查错误与丰富结果。
编写主线程和 Worker 内的逻辑模板,自动生成分离的 JS 文件代码,加速 Worker 开发。
向指定 Webhook URL 发送自定义 JSON 负载,查看响应状态码和内容,记录发送历史。
通过勾选元素关系(子孙、兄弟)、属性、伪类等条件,自动生成精确的CSS选择器字符串。
浏览并一键复制常见CSS动画(跳动、淡入、滑动等)的@keyframes代码。
模拟显示各个HTML元素在典型浏览器中的默认CSS属性表,辅助CSS Reset决策。