我对这段代码感到非常困惑:
var closures = [];
function create() {
for (var i = 0; i < 5; i++) {
closures[i] = function() {
alert("i = " + i);
};
}
}
function run() {
for (var i = 0; i < 5; i++) {
closures[i]();
}
}
create();
run();
Run Code Online (Sandbox Code Playgroud)
根据我的理解,它应该打印0,1,2,3,4(这不是闭包的概念吗?).
而是打印5,5,5,5,5.
我试过Rhino和Firefox.
有人可以向我解释这种行为吗?Thx提前.
我是Inno Setup的新手.困在一个问题〜如何配置卸载件以删除应用程序创建的所有文件,文件夹,子文件夹,甚至新文件/文件夹等(换句话说,100%删除应用程序和相关文件).
我在这里以及他们的论坛上搜寻,然后空了.任何人都可以给我一个文件,常见问题解答等关于如何做到这一点?
UPDATE
感谢到目前为止的所有反馈(非常棒).所以看起来我可以使用卸载部分中的{app}*.*指令删除所有内容.看起来每个人都在反对它.所以问题现在变成了(我想知道这是否应该是一个全新的问题)在卸载过程中是否有一种方法我们可以询问用户'你想要删除与该应用程序相关的所有项目文件吗?' 如果他们回答是,运行卸载{app}*.*件?
谢谢 -
在我的办公室,我们有一个像这样的网络目录结构:
/jobs/2004/3999-job_name/...
/jobs/2004/4000-job_name/...
Run Code Online (Sandbox Code Playgroud)
问题是员工重命名"4000-job_name"文件夹(这反过来又打破了依赖于名称与数据库一致的其他事物).
如何阻止用户重命名父文件夹,同时仍允许他们完全控制该文件夹的内容?
请记住,这是Windows用户将访问的Samba共享.
有没有人用过这个?我没有Javascript的大背景,这个lib看起来可能会加快速度.
www.pyjs.org
在我使用的Linux服务器上,进程以随机间隔写入随机命名的文件.这是一个小样本,显示文件大小,修改日期和时间以及文件名:
27659 2009-03-09 17:24 APP14452.log
0 2009-03-09 17:24 vim14436.log
20 2009-03-09 17:24 jgU14406.log
15078 2009-03-10 08:06 ySh14450.log
20 2009-03-10 08:06 VhJ14404.log
9044 2009-03-10 15:14 EqQ14296.log
8877 2009-03-10 19:38 Ugp14294.log
8898 2009-03-11 18:21 yzJ14292.log
55629 2009-03-11 18:30 ZjX14448.log
20 2009-03-11 18:31 GwI14402.log
25955 2009-03-12 19:19 lRx14290.log
14989 2009-03-12 19:25 oFw14446.log
20 2009-03-12 19:28 clg14400.log
Run Code Online (Sandbox Code Playgroud)
(请注意,有时文件大小可以为零.)
我想要的是一个bash脚本来总结文件的大小,按日期细分,产生这样的输出(假设我的算法是正确的):
27679 2009-03-09
33019 2009-03-10
64527 2009-03-11
40964 2009-03-12
Run Code Online (Sandbox Code Playgroud)
结果将显示随时间变化的活动趋势,并突出显示异常繁忙的日子.
在SQL中,操作将是一个简单的操作:
SELECT SUM(filesize), filedate
FROM files
GROUP BY filedate;
Run Code Online (Sandbox Code Playgroud)
现在,这在Perl或Python中可能都很简单,但我真的更喜欢bash shell或awk解决方案.在bash中按日期对文件进行分组似乎特别棘手(特别是如果你不能假设特定的日期格式).总结大小可以在我想的循环中完成,但是有更简单,更优雅的方法吗?
到目前为止我最好的一击:
交付工具需要进行一系列交付(d 1,d 2,... d n),并且可以按任何顺序进行交付- 换句话说,集合的所有可能排列D = {d 1, d 2,... d n }是有效的解决方案 - 但是特定的解决方案需要在路由器的一端离开基站之前确定(想象一下这些包需要加载到车辆LIFO中,例如).
此外,各种排列的成本也不相同.它可以计算为d i -1和d i之间行进距离的平方和,其中d 0被认为是基站,需要注意的是任何涉及方向变化的段都要花费3倍的时间(想象一下,这是在铁路或气动管上进行的,备份会破坏其他交通).
鉴于交付的集合
D表示为它们与基站的距离(因此abs(di-dj)是两个交付之间的距离)和迭代器permutations(D)将连续产生每个排列,找到一个成本小于或等于任何排列的排列其他排列.
现在,从这个描述直接实现可能会导致这样的代码:
function Cost(D) ...
function Best_order(D)
for D1 in permutations(D)
Found = true
for D2 in permutations(D)
Found = false if cost(D2) > cost(D1)
return D1 if Found
Run Code Online (Sandbox Code Playgroud)
哪个是O(n*n!^ 2),例如非常糟糕 - 特别是与O(n log(n))相比,有洞察力的人会通过简单地排序D.
我的问题:你能否提出一个似乎合理的问题描述,这自然会导致粗心大意进入排序算法的更糟(或不同的可怕)实现?
我正在尝试构建一个以下列方式接受数组的函数:
int inCommon = findCommon({54,56,2,10}, 4);
int findCommon(int nums[], int len){
for(int i=0; i<len; i++) cout<<nums[i]<<endl;
return 1;
}
Run Code Online (Sandbox Code Playgroud)
注意,这实际上并不是我的函数所做的,但我会循环遍历数组.我只是想确定是否可以传递像{54,56,2,10}这样的数组,而不是必须创建一个数组并传递它?(像这样:
int theArray[]= {54,56,2,10};
int inCommon = findCommon(theArray,4);
Run Code Online (Sandbox Code Playgroud) 在过去的几年中,我在MySQL空间设计了几个应用程序,然后不断改进性能和可扩展性方面,我感到很自在.我也有一些使用memcached的经验,可以在经常查询的结果集上提供应用程序端加速.最近我将Amazon SDB作为我电子商务实验的主要"数据库".
为了过度简化,我在脑海中使用SDB服务的快速理由是,使用无模式数据库结构可以让我专注于我的项目的逻辑问题,并在我的数据存储中快速累积内容.也就是说,不要担心事先设置和规范产品属性的所有可能排列; 只需开始加载产品,SDB就会记住所有可用的东西.
现在我已经设法完成了项目的前几次迭代,并且我需要为数据设置简单的接口,我正在运行我曾经认为与MySQL合作的问题.例如:在select语句中进行分组并限制语法以查询"items 50到100".我使用SDB的无架构体系结构获得的轻松优势,使用仅超过1800个项目查询/循环结果集而失去了性能.
现在我正在阅读像Tokyo Cabinet这样的项目,这些项目正在扩展内存中键值存储的概念,以极其快的速度提供伪关系功能(14x我在某处阅读).
我的问题:我作为应用程序设计人员/开发人员可以通过哪些基本指导或启发式方法来评估哪个数据库技术最适合我项目的每个阶段.
例如:在原型设计阶段,应用程序的逻辑/技术未知数使数据结构变得流畅:使用SDB.在用户可交付成为优先级的更成熟的阶段,使用传统工具,您不必花时间编写排序,分组或分页逻辑.
非常感谢使用这些工具的实际经验.
谢谢!
沙希布
我有一个双栏纸,空间限制非常严格.
我只看了我的手稿的最后一个版本,看到上半部分包含一个数字(如预期的那样),但在下半部分段落之间有很多垂直空间(足以挤出10多行),而且那个LaTeX可能已添加它,以便在下一页的开头,新的编号部分将从页面顶部开始.
我知道有一种方法可以调整这个,所以LaTeX不会那么努力,但我不确定如何.任何帮助?谢谢!
如何使用asp.net创建和下载excel文档?
目的是使用xml,linq或其他任何方式通过浏览器向客户发送excel文档.
编辑:用例
客户在浏览器中加载gridview(使用ajax框架),gridview直接链接到sql数据库.我把一个按钮'export to excel'让客户在他的计算机上保存这个gridview数据我希望启动一个excel的干净下载.
这里提出的解决方案并不干净,比如发送一个html文档并将标题更改为excel文档等,我现在正在搜索一个关于codeplex的简单解决方案,我会告诉你.