我正在尝试使用POST请求的结果打开一个新的浏览器选项卡.我正在尝试使用包含以下代码的函数:
var windowManager = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interface
s.nsIWindowMediator);
var browserWindow = windowManager.getMostRecentWindow("navigator:browser");
var browser = browserWindow.getBrowser();
if(browser.mCurrentBrowser.currentURI.spec == "about:blank")
browserWindow.loadURI(url, null, postData, false);
else
browser.loadOneTab(url, null, null, postData, false, false);
Run Code Online (Sandbox Code Playgroud)
我使用字符串作为url,JSON数据作为postData.有什么我做错了吗?
会发生什么,是创建了一个新选项卡,该位置显示了我要发布到的URL,但该文档是空白的.Back,Forward和Reload按钮在浏览器上都显示为灰色.除了执行POST之外,它似乎做了所有事情.如果我关闭postData参数,那么它正确运行GET.
构建标识符:Mozilla/5.0(Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.1)Gecko/2008070206 Firefox/3.0.1
我正在尝试编写一个正则表达式函数,该函数将识别并替换字符串中匹配的单个实例,而不会影响其他实例.例如,我有这个字符串:
12||34||56
Run Code Online (Sandbox Code Playgroud)
我想用&符号替换第二组管道来获取此字符串:
12||34&&56
Run Code Online (Sandbox Code Playgroud)
正则表达式的功能需要能够处理管道的X量,让我来代替第n个集管,所以我可以使用相同的功能,使这些替代品:
23||45||45||56||67 -> 23&&45||45||56||67
23||34||98||87 -> 23||34||98&&87
Run Code Online (Sandbox Code Playgroud)
我知道,我可以只拆分/替换/ CONCAT字符串在管,我也知道,我可以匹配/\|\|/
,并通过生成的数组迭代,但我想知道如果有可能写一个表达式,可以做这个.请注意,这将是JavaScript,因此有可能产生在运行时使用正则表达式eval()
,但它不可能使用任何Perl的正则表达式的具体说明.
我之前询问过Version Cue 3和Subversion.我认为这是一个更好的问题,有人建议http://www.gridironsoftware.com/Flow/我希望这个问题将允许其他人加入并建议其他工具或提供使用Version Que与其他工具的具体建议.
所以我正在着手一个ASP.NET MVC项目,虽然整体经验很好,但我对控制器已经变成的意大利面条很不满意.我在网上看了看(CodeCampServer等等),他们似乎都遇到了同样的问题,其中控制器方法非常一致地违反SRP(单一责任原则) - 例如一个控制器方法,如果请求是简单的呈现视图如果是POST,则更新模型.现在我有控制器方法负责整个应用程序中的多个逻辑路由 - 比如它检查在表单上单击了哪个按钮并采取相应的行动.我可以使用JavaScript将每个按钮单击重定向到不同的表单操作,但是有些东西感觉不对...... 另一个大问题是魔术字符串的泛滥--ViewData ["foo"] = blah; 长话短说,你们如何构建控制器逻辑?每个视图一个巨型模型对象?路由器有很多小控制器方法和JavaScript吗?我的目标是可维护的代码 - 随着功能的积累,我开始滑下滑坡......
我想我今天写的一些软件将在30年内使用.但我也意识到,很多都是基于UNIX传统,即将时间暴露为自1970年以来的秒数.
#include <stdio.h>
#include <time.h>
#include <limits.h>
void print(time_t rt) {
struct tm * t = gmtime(&rt);
puts(asctime(t));
}
int main() {
print(0);
print(time(0));
print(LONG_MAX);
print(LONG_MAX+1);
}
Run Code Online (Sandbox Code Playgroud)
执行结果:
函数ctime(),gmtime()和localtime()都将一个时间值作为参数,该时间值表示自Epoch(1970年1月1日00:00:00 UTC;参见时间(3))以来的时间(以秒为单位).
我想知道作为程序员在这个领域是否有任何主动做的事情,或者我们是否相信所有软件系统(又称操作系统)将来会如何神奇地升级?
更新看起来确实64位系统是安全的:
import java.util.*;
class TimeTest {
public static void main(String[] args) {
print(0);
print(System.currentTimeMillis());
print(Long.MAX_VALUE);
print(Long.MAX_VALUE + 1);
}
static void print(long l) {
System.out.println(new Date(l));
}
}
Run Code Online (Sandbox Code Playgroud)
但那一年292278994呢?
我正在为实验语言写一个翻译.该语言的三个主要结构是定义,语句和表达式.定义可以包含语句和表达式,语句可以包含定义和表达式,一种表达式可以包含语句.我使用union类型表示所有这些,因此我可以轻松地在它们上使用模式匹配.理想情况下,我想将这些代码放在不同的文件中,但OMake抱怨循环依赖问题.据我所知,不允许跨模块的循环类型定义.
我知道解决这个问题的唯一方法是一次定义所有三种类型:
type defn = ...
and stmt = ...
and expr = ...
Run Code Online (Sandbox Code Playgroud)
看起来这需要所有类型的代码都在同一个文件中.有没有办法解决?你如何处理代码中的循环定义?
什么是懒惰加载?
[阅读几个答案后编辑]为什么人们经常使用这个术语?
假设您只使用ASP/ADO记录集并将其加载数据或ADO.NET数据源以用于gridview.
我想我应该问为什么人们使用"懒惰加载"一词,"其他"类型是什么?
看起来像StackOveflow这里有一群F#爱好者.
我想更好地了解这种语言,因此,除了函数式编程理论之外,您能否指出我开始使用F#语言的更好起点?我的意思是,教程,怎么样,但首先是工作样本有机会开始做某事并享受语言.
非常感谢
安德里亚
我在几篇文章和博客中看到了对curried函数的引用,但我找不到一个好的解释(或者至少有一个有意义的解释!)
将我的Windows窗体应用程序定位到.NET 3.5 SP1 客户端框架真的很不错.但是,现在我正在使用HttpUtility.HtmlDecode
和HttpUtility.UrlDecode
函数,而MSDN文档并没有指出System.Net之类的任何替代品.
因此,不要反思源代码并将其复制到我的程序集中 - 我认为这不值得 - 在.NET 3.5 SP1客户端框架中有你知道的替代品,以替换它功能?他们将这些有用的功能限制为仅服务器代码似乎有点奇怪.
javascript ×2
.net ×1
.net-3.5 ×1
asp.net-mvc ×1
c# ×1
currying ×1
data-binding ×1
definition ×1
deployment ×1
f# ×1
firefox ×1
lazy-loading ×1
ocaml ×1
photoshop ×1
regex ×1
terminology ×1
time ×1
ubiquity ×1
unix ×1
versioning ×1
xul ×1
year2038 ×1