写点什么

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:163136
用户头像

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

关注

评论

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

苹果开发新款 AI 能「看懂」屏幕上内容;阿里未来 20% 代码将由 AI 编写丨 RTE 开发者日报 Vol.177

声网

给蚂蚁金服antv提个PR, 以为是改个错别字, 未曾想背后的原因竟如此复杂!

前夕

前端 数据可视化 bug 蚂蚁金服 antv-g2

快马科技丨中小型经销商数字化怎么玩?

科技热闻

反套路打工:王子公主职场图鉴

白洞计划

云计算

顶级Layer-3 通证正在飙升,布局龙头Degen Chain(含bitget教程)

股市老人

浅谈TypeScript对业务可维护性的影响

前夕

typescript 前端

IT外包公司可以帮企业做哪些网络优化?

Ogcloud

IT IT外包 IT外包公司 IT外包服务 IT外包服务商

我们是如何测试人工智能的(三)数据构造与性能测试篇

测试人

人工智能 软件测试

零训练创建大模型的新方法:进化算法在模型融合中的应用

算AI

人工智能 神经网络 深度学习 算法

大模型驱动的新范式选车引擎

之家技术

大模型 AIGC 企业号 4 月 PK 榜

汽车之家人的“灵创”AI应用平台及编程助手AutoCode

之家技术

大模型 AIGC 企业号 4 月 PK 榜

AI广告创意生产实践

之家技术

大模型 AIGC 企业号 4 月 PK 榜

Apache Doris 2.1.1 版本正式发布!

SelectDB

数据库 大数据 开源 数据分析 大数据 开源

全网唯一能够秒回粉丝的博主, 是如何做到的?

前夕

前端 Electron React 自媒体

通义灵码走进武汉大学:让 AI 编码助手激活大学生的创造力

阿里云云效

阿里云 AI 云原生 通义灵码

Databend 集成 PRQL:现代数据处理的一小步

Databend

从基础到高级,带你深入了解和使用curl命令(二)

霍格沃兹测试开发学社

连接世界,选择国外主机服务,让你的网站跨越地域限制

一只扑棱蛾子

国外主机 国外主机服务

日志服务 HarmonyOS NEXT 日志采集最佳实践

阿里巴巴云原生

阿里云 云原生 HarmonyOS 日志服务 sls

持续兑现承诺,英特尔锐炫Day 0驱动支持网易武侠大作《射雕》

E科讯

喜报!天翼云论文被权威国际学术会议IEEE/ACM CCGrid收录

编程猫

从基础到高级,带你深入了解和使用curl命令(一)

霍格沃兹测试开发学社

室内全彩LED显示屏的构成与技术

Dylan

技术 LED显示屏 全彩LED显示屏 led显示屏厂家 户内led显示屏

AIGC在广告创意上的实践

之家技术

大模型 AIGC 企业号 4 月 PK 榜

C++ While 和 For 循环:流程控制全解析

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

让 AI 帮你写代码,开发提效神器来了

阿里云云效

阿里云 AI 云原生

打包与发布iOS应用的完整指南

雪奈椰子

UniApp 应用发布到苹果商店指南

汽车智能化多模态交互

之家技术

大模型 AIGC 企业号 4 月 PK 榜

智能座机方案建设与实践

之家技术

人工智能 企业号 4 月 PK 榜

阿里云可观测 2024 年 3 月产品动态

阿里巴巴云原生

阿里云 云原生 可观测

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