硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

Mozilla、WebKit 准备支持对精简 JS 以及 CoffeeScript 和其他 JS 语言的调试

  • 2011-08-11
  • 本文字数:847 字

    阅读完需:约 3 分钟

如今的 Web 和 Javascript 调试器已经非常强大,并很好地集成在浏览器中——但是必须满足的条件是调试器中的代码是原始的、手写的。现在,大量执行和部署的 Javascript 通过软件生成,而不是开发人员。最常见的情况是精简或者压缩后的代码。在这些代码中设置断点非常麻烦甚至无法实现,因为它们往往是单长行形式——即使最初的源代码是格式良好的。

另一个问题是:Javascript 成为语言的​编译器目标正在逐渐受到欢迎,主要归功于Javascript VM 的普及。 CoffeeScript 仅仅是新语言的一个例子,最近推出的 ClojureScript 是现有语言的一个例子,编译为 Javascript。调试利用这些语言编写的代码意味着使用生成的 Javascript 代码,而不是可以设置断点、console.log() 消息和其他源代码相关功能的输入语言。

这个问题由来已久,JVM 语言也有类似的问题,从而提出了 JSR-045 - Debugging Support for Other Languages ,用于编译到 JVM 的各种语言,如 JRuby

源地图(Source Maps,SMAP)是解决办法,例如源语言和目标表示之间的映射文件。Google 的 Closure 编译器可以针对精简后的 Javascript 文件生成 SMAP 文件,不过目前能够读取 SMAP 的工具只有 Firebug 的扩展—— Closure Inspector

Mozilla 和 WebKit 项目在它们的调试功能中启动了对 SMAP 的支持。

Mozilla针对SMAP 和调试功能有一个深入的计划。该文档还提到了源映射的另一个潜在领域——CSS,它也被CSS 超集(如 SASS 或者 LESS )用于编译目标。

Mozilla 跟踪本次工作的 ticket 是 Bug 618650 - Map JS source coordinates to source language that was translated to JS 。规划文档中提到 Firefox 9 作为目标发布版本。

WebKit 也在计划支持SMAP ,实际的SMAP 格式可能是Closure Inspector 格式的改进版,Mozilla 也在考虑这种方案。 Bug 63940 - Web Inspector: draft implementation of compiler source mappings support in debugger 在跟踪这项特性。

查看英文原文 Mozilla, WebKit To Support Debugging Minified JS As Well As CoffeeScript and other JS Languages

2011-08-11 02:163500
用户头像

发布了 501 篇内容, 共 279.8 次阅读, 收获喜欢 64 次。

关注

评论

发布
暂无评论
发现更多内容

轻量化赋能,小程序容器激活 SuperApp 生态潜能

Byte_Me

小程序 App 小程序容器 轻量化 superapp

Playwright教程基础篇(2)元素定位策略大全

测吧(北京)科技有限公司

软件测试 #人工智能

印度软件外包业的AI大逃杀

脑极体

AI

利用Cron定时任务管理OpenVPN用户访问权限

qife122

OpenVPN Bash脚本

在线律师咨询小程序系统:法律服务

微擎应用市场

信创技术架构:自主可控体系的构建与实践路径

Byte_Me

多类别的家庭厨房食物、物品识别系统开箱即用教程 (YOLOv8)| 完整源码与部署教程

申公豹

人工智能

基于 EventBridge 构建 SaaS 应用集成方案

Apache RocketMQ

阿里云 云原生 消息队列 事件总线 EventBridge

技术盘点:消息中间件的过去、现在和未来

Apache RocketMQ

阿里云 云原生 消息队列 EventBridge

EventBridge消息路由|高效构建消息路由能力

Apache RocketMQ

云原生 消息队列 EventBridge 异地双活 事件总线Eventbridge

鸿蒙生态7月技术月报 | HarmonyOS 5.1 开发特性详解

优测云服务平台

鸿蒙 HarmonyOS

投票活动:高效投票

微擎应用市场

新闻速递丨Altair 重磅发布:全球100 个 AI 应用案例,助力企业加速 AI 技术应用

Altair RapidMiner

人工智能 AI 仿真 CAE RapidMiner

稳中求进 以进促稳 | 光大永明资产召开2025年年中工作会议

北京中暄互动广告传媒有限公司

消息驱动、事件驱动、流”基础概念解析

Apache RocketMQ

云原生 消息队列 EventBridge

EventBridge 事件总线及 EDA 架构解析

Apache RocketMQ

阿里云 云原生 消息队列 EventBridge 事件总线Eventbridge

二手车小程序系统:汽车交易

微擎应用市场

从Swatch“辱华”风波看品牌危机应对:舆情监测为何是出海品牌的必修课?

沃观Wovision

舆情监测系统 海外舆情监测 Swatch

金标联盟发布隐私权限体系,共建安卓生态安全体验

科技热闻

LevelDB 辅助工具类

数新网络官方账号

融云十周年纪录片《十字路口》之《妳很了不起》,看到焦虑的本质

融云 RongCloud

API 接口驱动 1688 采购自动化:从商品获取到下单支付的全流程贯通

Noah

告别季末打折清库存 企划阶段即可锁定利润

第七在线

Dify基础应用篇 (5) | 创建第一个对话型应用:智能客服机器人(保姆级教程)

测吧(北京)科技有限公司

软件测试 人工智能、 dify

互联网 + 共享农业小程序系统:智慧农业

微擎应用市场

低代码 + 智能体能有啥新花样?直接上实操!

行云创新

低代码 智能体 AI Agent

【跨国数仓迁移最佳实践6】MaxCompute SQL语法及函数功能增强,10万条SQL转写顺利迁移

阿里云大数据AI技术

sql 阿里云 MaxCompute ODPS BigQuery

医科+AI 人才培养丨首都医科大学AI通识教育新路径探索与实践分享

ModelWhale

人工智能 AI通识教育 首都医科大学

5G + AI + 云:电信技术重塑游戏生态与未来体验

GPU算力

云游戏 Stable Diffusion PC集群 PC 农场 PC farm

RocketMQ-Streams 首个版本发布,轻量级计算的新选择

Apache RocketMQ

Apache RocketMQ + Hudi 快速构建 Lakehouse

Apache RocketMQ

阿里云 RocketMQ 云原生 消息队列

Mozilla、WebKit准备支持对精简JS以及CoffeeScript和其他JS语言的调试_Java_Werner Schuster_InfoQ精选文章