【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

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

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

关注

评论

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

与前端训练营的日子 -- Week18

SamGo

学习

Python 语言基础之 变量和常量

HoneyMoose

二维码高端路线养成计

happlyfox

学习 技能 28天写作 3月日更

MT马特量化交易系统开发|MT马特量化交易软件APP开发

系统开发

列表推导式与字典推导式,滚雪球学 Python

梦想橡皮擦

28天写作 3月日更

IDEA 常用插件与配置

TroyLiu

Java vim ide idea插件 IntelliJ IDEA

《精通比特币》学习笔记(第四章)

棉花糖

区块链 读书笔记 3月日更

实现一个全链路监控平台很难吗?Pinpoint、SkyWalking、Zipkin,哪个实现比较好?

xcbeyond

架构 技术方案 链路监控 3月日更

BI掌柜量化交易系统开发|BI掌柜炒币机器人软件APP开发

系统开发

女神节·走近又美又飒的程序媛

华为云开发者联盟

华为 程序媛 IT 工程师 汉服

5分钟介绍AI人工智能,机器学习和深度学习,John 易筋 ARTS 打卡 Week 40

John(易筋)

ARTS 打卡计划 arts

(28DW-S8-Day16) 在线教育体验课

mtfelix

28天写作

快速排序算法实现及优化

Silently9527

Java 排序算法 快速排序

正则表达式.03 - 分组

insight

正则表达式 3月日更

小喜量化交易系统开发|小喜APP软件开发

系统开发

知识+AI融合创新探索,华为云论文被AI顶级学术期刊IEEE TPAMI接受

华为云开发者联盟

AI 模型 华为云 卷积神经网络 IEEE TPAMI论文

阿里P8大佬亲自讲解!万字Android技术类校招面试题汇总,已拿offer

欢喜学安卓

android 程序员 面试 移动开发

亿级用户中心的设计与实践

vivo互联网技术

大数据 架构设计 数据安全

【笔记】第六周 - 第 2 课

Geek_娴子

10 个解放双手超实用在线工具,有些代码真的不用手写

程序员小富

Java

阿里P8大牛亲自讲解!难道Android真的凉了?3面直接拿到offer

欢喜学安卓

android 程序员 面试 移动开发

面试现场:小伙伴的美团一面分享和分析[含答案]

小傅哥

Java 面试 小傅哥

工作日志3-2-3

技术骨干

上线 Python 应用仅需一条命令的开源框架:Zappa(详细教程)

HelloGitHub

Python Serverless 无服务器云函数

拖延症这个毛病「Day 16」

道伟

28天写作

世界上最好的排序算法是什么?

Nick

数据结构 算法 快速排序

Dubbo SPI 使用源码分析

Yangjing

dubbo spi ProxyFactory 服务暴露 ExtensionFactory

数据分析师

Nydia

Python基础之:函数

程序那些事

Python 数据分析 Python3 程序那些事

大括号之谜:C++的列表初始化语法解析

华为云开发者联盟

c++ 函数 语法 元素 std::array

「架构师训练营 4 期」 第九周 - 001&2

凯迪

架构师训练营 4 期

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