写点什么

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

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

关注

评论

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

虚幻引擎教程——生成云平台指定路径下的EXE文件

3DCAT实时渲染

虚幻引擎 ue UE虚幻引擎

减少跨国传输大文件所需时间的技巧与工具

镭速

跨国传输大文件

玩一玩编程式 AOP

江南一点雨

Java spring

Code片段D

Bert

[分词]基于Lucene8版本的混合分词器(分词合并)

alexgaoyh

中文分词 lucene Spring Boot 2 混合模型

借助Databuff,快捷构建Kubernetes可观测能力

乘云数字DataBuff

唯一一家!国际测评:文心大模型3.5总分第一,算法模型第一,行业覆盖第一

飞桨PaddlePaddle

人工智能 百度 大模型 文心一言 文心大模型

阿里云瑶池 PolarDB 开源官网焕新升级

阿里云数据库开源

polarDB PolarDB-X PolarDB-PG 阿里云PolarDB

LLaVA:将视觉微调引入大模型

Zilliz

计算机视觉 LLM 大语言模型 模型微调

案例 | 基于机理模型驱动的工业APP集成开发平台及应用实践

工赋开发者社区

文心一言 VS 讯飞星火 VS chatgpt (64)-- 算法导论6.5 3题

福大大架构师每日一题

福大大架构师每日一题

C++ 结合 opencv读取图片与视频

芯动大师

永续期权合约交易所系统开发案例(成品)

薇電13242772558

交易所

【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(系统底层优化篇)

码界西柚

MySQL 性能调优 技术分析 底层分析

飞桨AI for Science线下交流会:汇聚科学计算人才,携手共建繁荣社区

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

PPT | 未来工厂与数字孪生

工赋开发者社区

使用 Python 处理 CSV 文件,附示例

前端毛小悠

Python

打翻夏日调色盘,华为与你多巴胺一“夏”

最新动态

MegEngine Python 层模块串讲(上)

MegEngineBot

Python 深度学习 开源 Data

九科信息中标招商局集团流程挖掘项目

九科Ninetech

Docker学习路线9:运行容器

小万哥

c++ Docker 运维 后端 开发

酒有十千,棋有独步——本土大模型百花齐放,文心一言站稳领先者身位RlueEva-System大模型测评来了!你pick哪一家

TE智库

Code片段

Bert

一些可以极大提高工作效率的 Linux 命令

互联网工科生

Linux 自动化运维

Flink SQL 双表 JOIN 介绍与原理简析

腾讯云大数据

流计算 Oceanus

利用增强现实技术辅助跨国传输大文件的优化

镭速

算网深度融合成趋势,天翼云让政企上云更安全、更便捷!

天翼云开发者社区

云计算 云平台

喜报!天翼云电脑获“光华杯”大赛一等奖、最佳创意创新奖!

天翼云开发者社区

云计算 云电脑

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