我有一个简单的JavaScript类.
此类的一种方法是使用setInterval函数设置计时器.每次事件触发时我想调用的方法都在同一个类中定义.
问题是,如何将此方法作为参数传递给setInterval函数?
一次尝试是setInterval('this.showLoading(),100).但是不起作用.这个方法访问类属性,所以我需要'this'引用.
这是示例代码:
function LoadingPicture(Id)
{
this.imgArray = null;
this.currentImg = 0;
this.elementId = Id;
this.loadingTimer = null;
}
LoadingPicture.prototype.showLoading = function()
{
if(this.currentImg == imgArray.length)
currentImg = 0;
document.getElementById(this.elementId).src = imgArray[this.currentImg++].src;
}
LoadingPicture.prototype.StartLoading = function()
{
document.getElementById(this.elementId).style.visibility = "visible";
loadingTimer = setInterval("showLoading()", 100);
}
Run Code Online (Sandbox Code Playgroud) 我正在开发一个简单的辅助类来使用XmlHttpRequest发送请求(下面的代码).但我不能让它发挥作用.例如,在谷歌INVALID_STATE_ERR: DOM Exception 11浏览器中,我收到错误,而在其他浏览器中,我得到状态== 0.
//@method XRequest: Object constructor. As this implements a singleton, the object can't be created calling the constructor, GetInstance should be called instead
function XRequest() {
this.XHR = XRequest.CreateXHR();
}
XRequest.instance = null;
//@method static GetInstance: Creates a singleton object of type XRequest. Should be called whenever an object of that type is required.
//@return: an instance of a XRequest object
XRequest.GetInstance = function() {
if(XRequest.instance == null) {
XRequest.instance = new XRequest();
} …Run Code Online (Sandbox Code Playgroud) 是否有可能在发送http消息之前,使用javascript/XmlHttpRequest删除一些特定的http标头?
我使用的是专有浏览器,因此没有办法使用特定于浏览器的解决方案.
例如,我想在发送消息之前删除标题'Authorization'
POST /social/rpc?oauth_version=1.0& ... HTTP/1.1
Accept: text/html, image/png, image/*, */*
Accept-Language: ko
Authorization: Basic Og==
Host: test.myhost.com
Run Code Online (Sandbox Code Playgroud)
问候
我有一个简单的问题要问.我有一个UTF 16文本文件,以FFFE开头.有哪些C++工具可以处理这种文件?我只是想读它,过滤一些行,并显示结果.
它看起来很简单,但我只是在使用简单的ascci文件时有经验,而且我很着急.我正在使用VS C++,但我不想使用托管C++.
问候
这里放一个非常简单的例子
wifstream file;
file.open("C:\\appLog.txt", ios::in);
wchar_t buffer[2048];
file.seekg(2);
file.getline(buffer, bSize-1);
wprintf(L"%s\n", buffer);
file.close();
Run Code Online (Sandbox Code Playgroud) 好吧,首先我想说我在互联网开发领域有点新鲜.
无论如何,我试图知道是否可以使用javascript并行运行两段代码.
我真正需要的是调用远程服务器中的两个方法.我为两者传递了一个回调函数,该函数将在我想要的数据准备就绪后立即执行.由于运行这些功能的服务器需要一些时间来回答,我试图找到一种方法同时调用这两种方法,而不需要等到第一次完成调用第二种方法.
例如,setTimeout等方法是否同时运行
setTimeout(func1, 0);
setTimeout(func2, 0);
Run Code Online (Sandbox Code Playgroud)
...
function func1()
{
webMethod1(function() {alert("function 1 returned"); } );
}
function func1()
{
webMethod2(function() {alert("function 2 returned"); } );
}
Run Code Online (Sandbox Code Playgroud)
编辑
我刚刚发现这篇文章对于下一代浏览器的发布可能非常酷:Javascript网络工作者
我正在运行一些测试,比较javascript中实现的sha1算法 - 来自http://pajhome.org.uk/crypt/ - 在C#中实现.
使用C#获取{'method'的哈希值:'people.get'}我正在使用这个语句:
Convert.ToBase64String(new System.Security.Cryptography.SHA1CryptoServiceProvider().ComputeHash(Encoding.ASCII.GetBytes("{'method':'people.get'}")));
Run Code Online (Sandbox Code Playgroud)
这给了我 Qy95a0ShZqhbNdt6IF8qNf72jX0=
在javascript中我几乎一样:Qy95a0ShZqhbNdt6IF8qNf72jX0使用语句:
b64_sha1("{'method':'people.get'}");
Run Code Online (Sandbox Code Playgroud)
在javascript的情况下,哈希不以等号(=)结束.
这种差异会导致我在对服务器进行身份验证时遇到麻烦吗?
在我的情况下,正如你们许多人所知,我正在计算哈希的句子进入http体内,服务器将检查它.
谢谢
我正在尝试解析一种包含创建函数和存储过程等命令的大型 SQL 脚本。我想在找到 GO 语句时将文件拆分为字符串(我想使用普通的 ado.net 而不是 SMO 来执行它)。
问题是到目前为止我还没有找到合适的正则表达式。使用简单的\bGO\b忽略大小写将拆分它。但也会在评论中拆分所有 go(s)
-- 此行也将被拆分
使用这个表达式^\bGO\b[^--]$几乎可以解决我的问题,但是当我有两个连续的 GO(无论出于何种原因在我的域之后)时,我会遇到一些错误。
end
go
GO
Run Code Online (Sandbox Code Playgroud)
这就是我的脚本中 SP 创建结束的样子。
我是用 C# 做的
非常感谢
**编辑**
一位同事提出了一个解决方案,目前适用于我的所有脚本
^\s*go\s*\r\n
我在我的数据库中有一个表,其中一列存储XML数据.由于源代码的更改,我们希望重命名一个特定的XML节点名称和XML命名空间.让我们说我有以下XML:
<MediaClass xmlns="MediaClass/1">
<Media>
<Title>Test</Title>
<Type>Book</Type>
<Price>1.00</Price>
</Media>
</MediaClass>
Run Code Online (Sandbox Code Playgroud)
如何重命名Node MediaClass名称让我们说Book并更改名称空间值?
所以它看起来像:
<Book xmlns="Book/1">
<Media>
<Title>Test</Title>
<Type>Book</Type>
<Price>1.00</Price>
</Media>
</Book>
Run Code Online (Sandbox Code Playgroud)
我需要完全在T-SQL中完成它,因为它将用作迁移脚本.我们客户安装的最小SQL Server是SQL Server 2005.
我正在尝试编写一些代码来将数据从对象类型字段(来自DataSet)转换为它的目标(类型)字段.我正在使用动态转换(至少尝试)它.它似乎适用于字符串,int,DateTime.
但它不适用于无符号类型(ulong,uint).下面是一个简单的代码,显示了我想要做的事情.如果将ul var类型从ulong更改为int,则可以正常工作.
有人有线索吗?
public class console
{
public static void CastIt<T>(object value, out T target)
{
target = (T) value;
}
public static void Main()
{
ulong ul;
string str;
int i;
DateTime dt;
object ul_o = (object) 2;
object str_o = (object) "This is a string";
object i_o = (object)1;
object dt_o = (object) DateTime.Now;
Console.WriteLine("Cast");
CastIt(ul_o, out ul);
CastIt(str_o, out str);
CastIt(i_o, out i);
CastIt(dt_o, out dt);
Console.WriteLine(ul);
Console.WriteLine(str);
Console.WriteLine(i);
Console.WriteLine(dt.ToString());
}
}
Run Code Online (Sandbox Code Playgroud) 这应该计算8位灰度图像的直方图.使用1024x770测试位图,CreateTime最终在890ms左右.我怎样才能更快地完成这个(方式,方式)?
编辑:我应该提到,这实际上并没有计算直方图,它只从位图中获取值.所以我真的应该问,从8位灰度图像中检索所有像素值的最快方法是什么?
public class Histogram {
private static int[,] values;
public Histogram(Bitmap b) {
var sw = Stopwatch.StartNew();
values = new int[b.Width, b.Height];
for (int w = 0; w < b.Width; ++w) {
for (int h = 0; h < b.Height; ++h) {
values[w, h] = b.GetPixel(w, h).R;
}
}
sw.Stop();
CreateTime = (sw.ElapsedTicks /
(double)Stopwatch.Frequency) * 1000;
}
public double CreateTime { get; set; }
}
Run Code Online (Sandbox Code Playgroud) 我可以在C++中可靠地使用memset和memcpy运算符,并且内存分配了新的吗?
编辑:
是的,分配本机数据类型
例
BYTE *buffer = 0;
DWORD bufferSize = _fat.GetSectorSize();
buffer = new BYTE[bufferSize];
_fat.ReadSector(streamChain[0], buffer, bufferSize);
ULONG header = 0;
memcpy(&header, buffer, sizeof(ULONG));
Run Code Online (Sandbox Code Playgroud) 实际上,我在这里有一个设计问题.它非常简单但重点是:
我有一个C++类,其STL向量被声明为私有成员.但是该类的客户端需要遍历此向量.
在C#中,我们有一个非常方便的声明,产量,在这样的情况下,你写一个函数返回一个IEnumerable,它"产量"你一个很好的方式来遍历这个类内部的专用容器.
我只是想为C++找到一个优雅的解决方案,而不是使用像GetValue(int idx)这样的方法.
有什么建议?
例:
class Fat
{
public:
Fat();
// some code here ...
private:
void LoadSectors(SECT startPoint);
std::vector<SECT>sectors;
};
class Storage
{
public:
Storage(string CompoundFile);
//For example, this method will receive a ref to my fat system and iterate over
//the fat array in order to read every sector.
LoadStrem(Fat& fat);
};
Run Code Online (Sandbox Code Playgroud)
这是一个很简单的例子.
javascript ×5
c# ×4
c++ ×3
ajax ×2
t-sql ×2
casting ×1
containers ×1
file ×1
generics ×1
histogram ×1
http-headers ×1
oop ×1
performance ×1
regex ×1
sha1 ×1
sql-server ×1
stl ×1
unboxing ×1
unicode ×1
utf-16 ×1
visual-c++ ×1
web-services ×1
xml ×1