对于JavaScript程序员来说,目前有很多很棒的工具可以使用。本文将讨论10个优秀的文本编辑器,支持JavaScript、HTML5和CSS开发,可以使用Markdown进行文档编写。为什么使用编辑器而不是IDE进行JavaScript编程?原因是速度。编辑器和IDE的本质区别在于IDE不仅可以调试代码,还可以对代码进行分析,并且IDE还支持应用程序生命周期管理(ALM)系统。我们在这里讨论的许多编辑器都至少支持一种版本控制系统,通常是Git,如今IDE和编辑器之间的区别越来越小。在这10个JavaScript编辑器中,SublimeText和VisualStudioCode是其中的两个。SublimeText以其速度和方便的编辑功能多样性而著称。VisualStudioCode的功能和速度与SublimeText相差无几。TextMate排名第三,虽然TextMate是两年前首次推出的,但它的功能并没有真正跟上。您可能会在SublimeText、VisualStudioCode和Brackets中找到您最喜欢的JavaScript编辑器,但还有其他值得了解的编辑器工具,例如Atom、BBEdit、KomodoEdit、Notepad++、Emacs和Vim。您可以根据当前项目选择其中最方便的编辑工具。下面小编就来一一盘点,文末对比一下。SublimeText如果你想要一个灵活、强大、可扩展的文本编辑器,运行速度快如闪电,并支持切换到其他窗口进行代码检查、调试和部署,请考虑SublimeText。除了更快之外,SublimeText还有许多值得注意的优点。它涵盖了70多种文件类型,包括JavaScript、HTML和CSS;即时导航和即时项目切换;多个选项(一次进行一系列更改),包括列选择(一次选择文件的一个矩形区域);多窗口(使用所有监视器窗口)和拆分窗口;使用简单的JSON文件完成定制;基于Python的插件API;搜索命令板。对于使用其他编辑器的程序员,SublimeText支持TextMate包(不包括命令)和Vi/Vim仿真。SublimeText是一个高度可配置和可扩展的文本编辑器。它包括50多种语法,包括JavaScript,可以使用Sublime包和TextMate语法定义对其进行扩展。只需敲击几下键盘,即可安装对Babel(React)和TypeScript(Angular)的语法和支持。SublimeText支持多窗口、拆分窗口,每个项目可以有多个工作区、多个视图和包含视图的多个窗格。当您想要集成、调试和测试空间时,使用所有屏幕空间变得相当简单。SublimeText还支持自定义一切:颜色、文本字体、全局键绑定、制表位、文件特定的键绑定和片段,甚至语法高亮规则等。SublimeText的编码文件默认为JSON文件,语言定义默认为XML.SublimeText有一个活跃的社区,用于创建和维护SublimeText包和插件。SublimeText缺少的许多功能,包括JSLint和JSHint接口、JsFormat、JsMinify、PrettyJSON和Git支持,都可以使用PackageInstaller通过社区实现。VisualStudioCodeVisualStudioCode是微软发布的一款免费的轻量级编辑器和IDE。它具有VisualStudio组件,可以与开源AtomElectronshell混合使用。它为使用C#进行ASP.NetCore开发提供了极好的支持;它还通过TypeScript和JavaScript为Node.js开发提供了出色的支持。与仅在Windows上支持VisualStudio的约定不同,VisualStudioCode还可以在MacOS和Linux上运行。由于包含TypeScript编译器和Salsa引擎,VisualStudioCode具有非常好的JavaScript代码完成功能。VisualStudioCode在后台将JavaScript代码发送到TypeScript编译器以推断类型和构建符号表。您可以在屏幕图像底部的框中??看到hasOwnProperty方法信息。相同的符号表使IntelliSense能够在表达式的整个输入过程中为您提供出色的弹出式选项列表。您将获得以下功能:填充后自动关闭、自动填充完成选项、键入后自动列出方法以及方法中的自动参数列表。您可以通过添加对DefinitelyTyped中的d.ts文件的引用来增强IntelliSense。当您发现常见问题(例如在Node.js内置变量中使用__dirname)时,VisualStudioCode将为您提供这些功能。VisualStudioCode是用于Node.js和ASP.Net开发的免费轻量级编辑器和IDE。它结合了Microsoft技术,例如TypeScript编译器、Roslyn.Net编译器和Atom使用的Electronshell。VisualStudioCode适用于Windows、MacOS和Linux平台。VisualStudioCode的Git支持非常好且易于使用。VisualStudioCode调试器为Node.js和ASP.Net开发提供了出色的调试体验。VisualStudioCode具有非常好的HTML、CSS、Less、Sass和JSON工具,它们基于与InternetExplorerF12开发人员工具相同的技术。此外,VisualStudioCode提供与gulp和jake等外部任务运行器的可定制集成。VisualStudioCode具有强大的插件生态系统,例如对Angular和React的支持。在使用JavaScript和TypeScript框架和库构建应用程序时,建议使用VisualStudioCode。BracketsBrackets是一个免费的开源编辑器,最初来自Adob??e,旨在为JavaScript、HTML和CSS以及相关的开放网络技术提供更好的工具。Brackets本身是用JavaScript、HTML和CSS编写的。除了内置功能,Brackets还有一个扩展管理器,用于扩展前端开发人员使用的众多语言和工具。Brackets不如SublimeText和TextMate快,但除了从网络加载或更新程序内容时的暂停外,它仍然非常快。Brackets不仅对JavaScript、CSS、HTML和Node.js有很好的支持,它还有一些其他很酷的功能,比如在线编辑与HTMLID关联的CSS。此外,Brackets拥有干净的UI界面和编辑时网页的实时预览。Brackets是免费代码编辑器的绝佳选择。括号扩展也是用JavaScript编写的,也可以调用Node.js模块。与大多数在选项卡中显示打开文件的编辑器不同,Brackets在文件树上方显示了一个工作文件列表。Brackets的JavaScript自动补全功能非常好,自动补全各种括号的右括号,jQuery方法中输入$后关键字、变量、方法的自动下拉菜单。括号可以控制Node.js调试器并从菜单项重新启动Node。可以轻松扩展Brackets以添加额外的功能(例如TypeScript和JSX支持、Bower集成和Git集成)。快速编辑、快速保存文档、快速打开文件和实时预览都有助于简化Web应用程序编辑,让您专注于编码或设计。Brackets也有一些缺点,例如一些Brackets扩展很难配置,不像Emacs包或Vim插件那么容易。AtomAtom1.15.0是GitHub上一个免费、开源、可编程的编辑器,适用于Windows、MacOS和Linux平台,它与GitHub应用程序集成,并有许多可用的包和主题。Atom源代码在GitHub上,它是用CoffeeScript编写的,并与Node.js集成。Atom是Chromium浏览器的一个专门化版本,旨在成为文本编辑器而不是网络浏览器;每个Atom窗口本质上都是一个本地呈现的网页。当Atom不自动更新时,性能非常好。它具有一些非常棒的功能,例如模糊搜索、快速项目搜索和替换、多个光标和选择、多个窗格、代码片段、代码折叠以及导入TextMate语法和主题的能力。Atom可以安装两个命令行实用程序:Atom,用于从shell启动编辑器;和APM,用于管理Atom的包。KomodoEditKomodoEdit是ActiveState的KomodoIDE的免费缩小版,KomodoIDE是一款很酷的多语言编辑器。如果你喜欢KomodoIDE但买不起,那么KomodoEdit是你不错的选择。KomodoEdit不是IDE,因此您需要在编辑器之外完成代码控制。它不提供实时代码收集,因此如果您独立开发并且不与他人共同编码,则没有任何问题。它也不提供HTTP检查器。KomodoEdit具有与KomodoIDE相同的编辑功能,但缺少代码重构、调试、单元测试、源代码控制集成和其他适合IDE的功能。无论如何,KomodoEdit都能免费满足您的JavaScript编辑需求,并提供用于编辑HTML、CSS、Python、Perl、Ruby、Tcl等编程的标记语言。Notepad++Notepad++是一款免费开源的Windows源代码编辑器和记事本,非常适合编辑JavaScript。它支持大约50种编程和标记语言。除了它的多个文档编辑窗口外,它还有一个工作区树视图、功能列表选项卡和文档结构图选项卡。它的加载时间足够快,性能也足够强大,不会拖慢您的速度。凭借语法着色和折叠功能、可编辑功能(包括列模式编辑和正则表达式、支持搜索和替换)以及一定量的函数补全和参数提示,Notepad++可以轻松成为JavaScript最好的代码编辑器。然而,它还不是一个成熟的JavaScript编辑器,它还不能生成代码,执行重构等操作,也不能在大型项目中快速导航。BBEditBBEdit11.0.3是一个文本编辑器,HTMLforMaconly,它支持大约35种编程和标记语言,社区版本还通过BBEdit网站提供对许多其他语言的支持。许可版和社区版都具有语法高亮显示;行货版也有一定的自动补全,主要是函数名、变量名,还有少量关键字和标签。许可版本还集成了Git、Perforce和Subversion版本控制系统。BBEdit11是产品的重大改写,这个版本比以前更快,并且可以很好地处理巨大的文件。它有一个提取函数,可以将选择或查找的结果复制到一个新的缓冲区中,还有一个剪切函数。BBEdit可以编辑和运行Perl、Python、Ruby和Shell脚本,还可以检查Perl和Python脚本的语法。BBEdit对HTML和Markdown的支持实际上比它对JavaScript的支持要好。您可以为BBEdit安装三种命令行工具:一种用于编辑器,一种用于差异引擎,最后一种用于多媒体搜索。TextMateTextMate过去主要用于在MacBook上编写RubyonRails,但现在TextMate变得不那么突出了,而SublimeText越来越受欢迎。TextMate不是IDE,但它提供了特定语言的IDE所缺乏的功能,例如包、代码片段、宏和范围系统。TextMate现在提供了简单的JavaScript和jQuery包,它们提供了一套很好的工具来快速生成JavaScript和jQuery代码。对于类似IDE的功能,您可以使用TextMate的shell集成版本,但不要指望TextMate进行代码重构、自动单元或回归测试。如果Grunt设置正确,TextMate可以自动执行JavaScript测试。TextMate有一个BundleItems选项卡,可以从中下载和安装其他包。Bundlesource,实际上是驻留在GitHub存储库中的产品的源代码。EmacsEmacs及其衍生产品自20世纪70年代初以来就来自麻省理工学院人工智能实验室。Emacs开始是作为TECO文本编辑器的宏,然后逐渐演变为独立的。MacOS上默认安装的Emacs版本为22.1.1,不支持GUI。您可以轻松安装XEmacs、Aquamacs(MacOS的GUI)和更新的GNUEmacs版本。Emacs是一个JavaScript编辑器。编辑JavaScript的默认模式在js包中。使用Emacs可以获得更好的语法高亮和linting。Emacs使用js2模式包,并使用ac-js2进行自动补全。在Emacs中,您可以使用串行模式来获取实时浏览器JavaScript、HTML和CSS交互。Vim(及其变体)Vi(可视化界面)最初是由BillJoy为Unix编写的。从1976年开始,逐渐从Ed演变为Ex。Vim是Vi的免费、开源、改进版本;7.3版默认安装在MacOSX上。您可以轻松安装更新版本的Vim、MacVim(MacOS的GUI)或适用于您的平台的任何版本。Vim是一个JavaScript编辑器,其vim-plug自述文件中的建议非常好。使用哪个编辑器由您决定无论您专注于客户端JavaScript还是Node.js,都有多种选择。如果您正在寻找一个功能强大、快速且支持许多其他语言的JavaScript编程文本编辑器,您可以选择SublimeText。如果您想要一个免费、快速且具有IDE兼容性并且对ASP.Net和C#有良好支持的JavaScript编辑器,VisualStudioCode是一个不错的选择。Brackets和Atom是两个新的免费文本编辑器。Brackets是一个非常接近Node.js开发IDE的编辑器,Atom与GitHub桌面客户端高度集成。在Windows上,Notepad++快速、高效且免费。在macOS上,BBEdit是一种快速、酷炫、免费的限量版版本控制集成,可作为HTML工具使用。TextMate仍然是一款出色的编辑器,速度快、功能齐全且可扩展,但开发速度缓慢。如果你更喜欢使用开源脚本语言,KomodoEdit是一个不错的选择。如果您更喜欢自定义编辑器,Emacs或Vim可以满足您的要求。
