【问题标题】:Visual Studio 2010 insists on inserting spaces in JavaScriptVisual Studio 2010 坚持在 JavaScript 中插入空格
【发布时间】:2011-07-21 12:31:07
【问题描述】:

Visual Studio 2010 在关键字“function”和以下括号之间插入一个空格。是否可以关闭此功能?即

Visual Studio 将我的代码格式化为:

var vsfn = function () { };

我想要这种格式:

var myfn = function() {};

【问题讨论】:

  • 我建议你不要改变这种行为。许多 JavaScript 程序员认为这是一种很好的风格,以表示该函数没有在这一行中被调用。所以 functioncall() 没有空间,但是例如。 if (...) 或 function foo () {} 会有一个空格。
  • 有趣... Crockford 推荐空间javascript.crockford.com/code.html 但另一方面,它并没有在 jQuery 的源代码中使用:github.com/jquery/jquery/blob/master/src/core.js 这是 JavaScript 约定的史诗之战吗?
  • 此外,Crockford 特别推荐它用于匿名函数,而不是命名函数。
  • 另外,关键字“function”不是表示该函数正在被声明而不是被调用吗?任何 JavaScript 程序员都应该非常熟悉 function 关键字。
  • 不得不说我在这里最同意@Lance Fisher 和 Crockford... 可以将其视为提醒您该函数没有名称。即,坚持使用 Crockford,function (匿名与否)之后总是有一个空格,而匿名你所做的就是拿走名称(而不是空格)function () { vs function myFunc() {

标签: javascript visual-studio-2010 formatting intellisense


【解决方案1】:

VS2010 sp1 引入了一个新选项:Insert space after function keyword for anonymous functions in 工具 > 选项 > 文本编辑器 > JScript > 格式 > 间距。您可以将其关闭以获得所需的行为。

【讨论】:

    【解决方案2】:

    您应该在此处找到这些设置:

    工具 > 选项 > 文本编辑器 > JScript > 格式 > 间距

    【讨论】:

    • 我已经尝试禁用所有这些间距设置,但 Visual Studio 仍然在“function”和“()”之间放置一个空格。我认为目前解决它的唯一方法是完全禁用格式化。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多