Cloud9的CFO曾经在LinkedIn上面发起一个调查,原标题为:What tools do you use for Node.js development?,回贴者甚多。

  目测很多人都使用VIM,因此写了段JS脚本,统计回帖中所涉及开发工具的次数,看一看哪种开发工具最流行:

/*
工具列表
*/
var tools = {
    'vim': 0
  , 'notepad': 0
  , 'sublime': 0
  , 'webstorm': 0
  , 'webmatrix': 0
  , 'netbean': 0
  , 'visual studio': 0
  , 'eclipse': 0
  , 'aptana': 0
  , 'cloud9': 0
  , 'gedit': 0
  , 'rubymine': 0
  , 'edge': 0
};
/*
计算
*/
$('.comment-item').each(function() {
   
  var $comment = $(this)
    , val = $comment.text().toLowerCase()
    ;
  for (var tool in tools) {
    val.indexOf(tool) > -1 && tools[tool]++;
  };
}); /*
排序
*/
var sort_arr = [];
for (var key in tools) {
  sort_arr.push({key:key, val:tools[key]});
}
sort_arr.sort(function(x, y) {
  return y.val - x.val;
});
/*
输出
*/
console.log(JSON.stringify(sort_arr));

  下面是输出结果:

[{
    "key": "vim",
    "val": 40
}, {
    "key": "sublime",
    "val": 37
}, {
    "key": "cloud9",
    "val": 21
}, {
    "key": "webstorm",
    "val": 13
}, {
    "key": "eclipse",
    "val": 13
}, {
    "key": "netbean",
    "val": 8
}, {
    "key": "aptana",
    "val": 5
}, {
    "key": "gedit",
    "val": 4
}, {
    "key": "notepad",
    "val": 4
}, {
    "key": "visual studio",
    "val": 3
}, {
    "key": "webmatrix",
    "val": 2
}, {
    "key": "rubymine",
    "val": 1
}, {
    "key": "edge",
    "val": 1
}]

  结论: 看来还是使用记事本(vim, sublime)开发JavaScript的人最多,然后是IDE,如Eclipse, Webstorm等。鉴于发贴者的身份,Cloud9的使用率可能被高估。

你用什么工具开发JavaScript?的更多相关文章

  1. 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  2. WebStorm(Amaze开发工具)--JavaScript 开发工具

    WebStorm(Amaze开发工具)--JavaScript 开发工具 一.总结 1.webstorm:前段开发神器,应该比sublime好用. 2.webstorm功能:支持显示图片宽高,标签重构 ...

  3. servlet基本原理(手动创建动态资源+工具开发动态资源)

    一.手动开发动态资源 1 静态资源和动态资源的区别 静态资源: 当用户多次访问这个资源,资源的源代码永远不会改变的资源. 动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变. <scr ...

  4. 2015年10个最佳Web开发JavaScript库

    2015年10个最佳Web开发JavaScript库 现在的互联网可谓是无所不有,有大量的JavaScript项目开发工具充斥于网络中.我们可以参考网上的指导来获取构建代码项目的各种必要信息.如果你是 ...

  5. 使用顶级 VSCode 扩展来加快开发 JavaScript

    使用顶级 VSCode 扩展来加快开发 JavaScript 发表于 2018年08月24日 by 愚人码头 被浏览 3,942 次 分享到:   小编推荐:掘金是一个面向程序员的高质量技术社区,从 ...

  6. 使用 Chrome 开发者工具进行 JavaScript 问题定位与调试

    转自:https://www.ibm.com/developerworks/cn/web/1410_wangcy_chromejs/ 引言 Google Chrome 是由 Goole 公司开发的一款 ...

  7. 精通BIRT:Eclipse商务智能报表工具开发实践指南

    http://blog.csdn.net/birtbird/article/details/8935520 [置顶] 精通BIRT:Eclipse商务智能报表工具开发实践指南 分类: BIRT 201 ...

  8. WordPress小工具开发教程(网站公告)

    WordPress小工具开发教程(网站公告) BY TIANQIXIN · 2012 年 12 月 26 日   wordpress主题小工具,可以自由拖动到侧边栏,并在前台实现相应功能!一般自带的小 ...

  9. NDK工具开发Jni,Android studio jni开发

    NDK工具开发JNI 对于JNI的作用,我这边就不详细说明了,百度google 有很多这样的介绍,这边着重详解AS使用NDK工具开发,调C的流程. 1,创建工程 2,创建native方法 //该类的路 ...

随机推荐

  1. p ython笔记第一天

    一.Linux基础 - 计算机以及日后我们开发的程序防止的服务器的简单操作 二.Python开发 http://www.cnblogs.com/wupeiqi/articles/5433893.htm ...

  2. jquery 小知识点

    //计算checkbox有多少个被选中 $("input[name='user_apply']:checked").length)://可以查看 所有的name=user_appl ...

  3. 常见css的兼容问题

    链接的虚线框问题 <!-- html --> <a class="noDashedBox" href="#"><img src=& ...

  4. MVC4.0 使用Form认证,自定义登录页面路径Account/Login

    使用MVC4.0的时候,一般遇到会员登录.注册功能,我们都会使用Form认证,给需要身份验证的Action进行授权(需要登录后才能访问的Action添加[Authorize]属性标签),登录.注册的时 ...

  5. ifstat-网络接口监测工具

    ifstat-网络接口监测工具 http://gael.roualland.free.fr/ifstat/ ifstat is a tool to report network interfaces ...

  6. .net mvc通过ucenter和 discuz的整合,nopcommerce ucenter 插件的方式实现

    discuz无疑是目前市面上最好的论坛之一,对于大多数公司来说,用discuz搭建一个论坛肯定是最节约成本的选择,然而我们的会员想要和discuz进行整合的话,只有两种荀泽,一种直接选用discuz的 ...

  7. 一:java概述:

    1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名为Java: Java的三种技术 ...

  8. Windows平台下Python2.7中pip的安装方法

    本文允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 文件下载 需要下载并运行ez_se ...

  9. 消息点击事件的响应链---hitTest:withEvent:方法

    *当用户点击屏幕时,会产生一个触摸事件,系统会将触摸事件加入到 UIApplication管理事件队里中 *UIApplication 会从事件队列中取出最前面的事件进行分发以便处理,通常,先发送事件 ...

  10. algorithm之不变序列操作

    概述:不变序列算法,参见http://www.cplusplus.com/reference/algorithm/ /* std::for_each template <class InputI ...