Javascript代码突出显示新行和缩进
javascript code highlight with new lines and indentation
我正在写一个小单页应用程序(使用knockout.js:-)),其中我有一系列的javascript代码的例子。这段代码被封装在一个函数中,我在函数上调用toString以在浏览器中显示源代码。
总的来说一切都很好!但是由于示例的性质(作为学习练习),它们包含一些通常被认为是多余的代码。例如,下面的代码演示了javascript中的假y值:
var example = function() {
if("" || 0 || null || undefined || NaN) {
console.log("i'll never be logged");
}
else {
console.log("i'll always be logged");
}
};
在firefox中,如果我调用example.toString()
返回的字符串不包含0
, null
或""
-所以我的例子没有准确描绘!然而,在IE中,上述值包含在toString()
调用的结果中,但字符串只是一行-没有缩进或任何东西!
所以我想知道的是
<罢工> 1。更可能的解决方案:有人知道ajs实现的代码高亮器,它将处理格式化/缩进为我,如果给一个长,单行字符串javascript代码。或者一个高光笔,允许简单的可扩展性来交付这种特性罢工>
- 不太可能的解决方案:如果有人知道如何在FF中获得准确的结果,或正确
任何帮助将不胜感激,这是真的令人沮丧,没有得到的结果,我想使应用程序完美:)
EDIT:似乎我是密集的,IE格式正确,它只是与我在构建应用程序时使用的基本示例一起,我将函数声明为单行,所以格式被准确地传递了!因此,在web历史上,IE完全符合您的期望,没有任何问题:)如果有人能提供一个原因,firefox从字符串表示
首先,允许脚本引擎优化代码。如果编译器发现永远不会执行的分支,它可能会删除它们。
其次, Function.prototype。toString依赖于实现:
15.3.4.2 Function.prototype.toString ()与实现相关的函数表示为返回。这种表示具有函数声明的语法。特别要注意留白的使用和位置,行终止符和分号在表示字符串是随具体.
如果您希望脚本内容的格式合理,请获取对script元素的引用,并使用其textContent或innerText(以所支持的为例)。
但是如果你想要正确格式化的代码,搜索"javascript pretty print"或者自己在HTML中做。
- 崇高的文本新行失去缩进
- 缩进第二行的文本块
- 对文本区域段落的每一首行应用缩进
- Vim Javascript 在以括号结尾的换行符上配置缩进宽度
- 使用 react.renderToStaticMarkup 获取换行符/缩进
- 逐行缩进 Javascript 文件
- 使用换行符和缩进重新格式化单个运行行
- 如何使用引导程序在一行中存在 3 个缩略图后创建新行
- 在不影响第一行的情况下,每隔一行缩进一个表.html/css/js/jQuery
- Vim:如何从行首开始计算缩进量
- codemirror:如何在按tab键时缩进整行
- 500 错误:预期为“缩进”,但出现“换行符”
- 添加缩进到光滑网格行
- 如何添加换行到quine函数,我想要适当的缩进和每行源代码后的换行
- 如何从$(..).html()方法给出的多行字符串中删除缩进
- 如何阻止emacs缩进javascript逗号分隔列表的第二行(例如array或json) ?
- Javascript代码突出显示新行和缩进
- Vim缩进javascript的多行var声明
- 获取 CodeMirror 中特定行中使用的缩进
- 启用换行时,如何在 Ace 编辑器中禁用后续行的缩进