正如在JavaScript 1.7的Mozilla changlog中可以看到的,他们已经添加了解构分配.可悲的是,我不是很喜欢这种语法(为什么要写a和b两次?):
var a, b;
[a, b] = f();
Run Code Online (Sandbox Code Playgroud)
这样的事情会好很多:
var [a, b] = f();
Run Code Online (Sandbox Code Playgroud)
这仍然是向后兼容的.类似Python的解构不会向后兼容.
无论如何,我能够想出的最好的JavaScript 1.5解决方案是:
function assign(array, map) {
var o = Object();
var i = 0;
$.each(map, function(e, _) {
o[e] = array[i++];
});
return o;
}
Run Code Online (Sandbox Code Playgroud)
其工作方式如下:
var array = [1,2];
var _ = assign[array, { var1: null, var2: null });
_.var1; // prints 1
_.var2; // prints 2
Run Code Online (Sandbox Code Playgroud)
但这真的很糟糕,因为_没有任何意义.它只是一个存储名称的空壳.但遗憾的是它需要因为JavaScript没有指针.在正面,您可以在值不匹配的情况下指定默认值.另请注意,此解决方案不会尝试切片阵列.所以你不能做类似的事情{first: 0, rest: 0}
.但如果有人想要这种行为,那很容易做到.
什么是更好的解决方案?
我们在世界各地都有许多开发人员需要与他们合作.
我们的功能要求是:
理想情况下,这已经存在于某个地方(并且是免费的),或者如果任何软件可以做到这一点,这也是不昂贵的,那就没问题了.
理想情况下,所有这些功能都将通过标准http运行.
假设你有:
A-B-C
Run Code Online (Sandbox Code Playgroud)
现在你的构建/测试失败了.修复程序应该合并到A.我当前的工作流程是这样的:
$ git commit -m "fixA"
A-B-C-fixA
$ git rebase -i A~1
Run Code Online (Sandbox Code Playgroud)
并在A中压制fixA,导致:
A'-B-C
Run Code Online (Sandbox Code Playgroud)
是否有命令可以执行以下操作:
A-B-C + (index with fix for A)
$ git commit -supperdupper A
Run Code Online (Sandbox Code Playgroud)
结果:
A'-B-C
Run Code Online (Sandbox Code Playgroud) 我打算为iPhone开发一个应用程序,该应用程序必须访问几个SOAP服务.在iPhone SDK中进行一些基本检查时,我无法找到任何访问SOAP服务的支持,一点谷歌搜索得出的结论是iPhone SDK中不支持SOAP.
因此,如果我想构建该应用程序,我需要提出一种从iPhone访问SOAP服务的方法.什么是最好的方法?任何最佳做法?有人已经使用iPhone SDK中存在的功能来编写库以访问SOAP服务吗?
(由于我需要访问的服务是由另一方公开的,并且它们只将它公开为SOAP,遗憾的是不能选择切换到另一种类型的接口(例如基于REST的API).
格罗
我在使用Perl grep()时遇到麻烦,该字符串可能包含被解释为正则表达式量词的字符.
当grep模式为"g ++"时,我得到以下错误,因为'+'符号被解释为量词.以下是程序的输出:
1..3
ok 1 - grep, pattern not found
ok 2 - grep, pattern found
Nested quantifiers in regex; marked by <-- HERE
in m/g++ <-- HERE / at escape_regexp_quantifier.pl line 8.
Run Code Online (Sandbox Code Playgroud)
是否有一个修饰符我可以用来表示grep应该忽略量词,还是有一个函数可以逃避量词?
#! /usr/bin/perl
sub test_grep($)
{
my $filter = shift;
my @output = ("-r-xr-xr-x 3 root bin 122260 Jan 23 2005 gcc",
"-r-xr-xr-x 4 root bin 124844 Jan 23 2005 g++");
return grep (!/$filter/, @output);
}
use Test::Simple tests => 2;
ok(test_grep("foo"), "grep, …
Run Code Online (Sandbox Code Playgroud) 所以我有以下内容:
public class Singleton
{
private Singleton(){}
public static readonly Singleton instance = new Singleton();
public string DoSomething(){ ... }
public string DoSomethingElse(){ ... }
}
Run Code Online (Sandbox Code Playgroud)
使用反射如何调用DoSomething方法?
我问的原因是因为我将方法名称存储在XML中并动态创建UI.例如,我正在动态创建一个按钮,并告诉它在单击按钮时通过反射调用的方法.在某些情况下,它将是DoSomething,或者在其他情况下,它将是DoSomethingElse.
我是一名使用Microsoft Visual Studio处理个人和团队项目的开发人员.我可以在我自己的服务器上设置几个不同的源控制包中的一个,例如VSS,SourceGear Vault或SVN,并远程访问它们; 但是,我不想处理设置,配置等的麻烦.
有没有人提供托管的源代码管理服务?
main()
在C和C++中定义函数的正确(最有效)方法是什么- int main()
或void main()
- 为什么?如果int main()
那么return 1
或return 0
?
这个问题有很多重复,包括:
main()
函数的有效签名是什么?main()
函数void main()
和int main()
?main()
在C++中的签名main()
? - 对于C++,确实有一个非常好的答案.main()
C语言中的函数样式main()
C中的方法类型int main()
vs void main()
在C中有关:
我在有序数组上使用LINQ to Objects指令.我不应该做哪些操作来确保数组的顺序没有改变?
c# ×2
arrays ×1
c ×1
c++ ×1
certificate ×1
code-signing ×1
git ×1
ios ×1
iphone ×1
javascript ×1
linq ×1
perl ×1
reflection ×1
regex ×1
return-type ×1
return-value ×1
saas ×1
singleton ×1
soap ×1
sorting ×1
string ×1
web-services ×1
wsdl ×1