小编rme*_*dor的帖子

"this"关键字如何在函数中起作用?

我刚刚在JavaScript中遇到了一个有趣的情况.我有一个类,其方法使用object-literal表示法定义多个对象.在这些对象中,this正在使用指针.从程序的行为,我推断出this指针指的是调用方法的类,而不是文字创建的对象.

这似乎是随意的,尽管这是我期望它工作的方式.这是定义的行为吗?跨浏览器安全吗?有没有任何理由可以解释为什么它超出"规范如此说明"的方式(例如,它是否是一些更广泛的设计决策/哲学的结果)?简化代码示例:

// inside class definition, itself an object literal, we have this function:
onRender: function() {

    this.menuItems = this.menuItems.concat([
        {
            text: 'Group by Module',
            rptletdiv: this
        },
        {
            text: 'Group by Status',
            rptletdiv: this
        }]);
    // etc
}
Run Code Online (Sandbox Code Playgroud)

javascript language-features language-design

248
推荐指数
3
解决办法
9万
查看次数

历史股票数据来源

我正在尝试制作股票市场模拟器(可能最终会成长为预测AI),但我无法找到要使用的数据.我正在寻找一个(希望是免费的)历史股市数据来源.

理想情况下,它将是一个非常细粒度(第二或每分钟间隔)的数据集,其中包含纳斯达克和纽约证券交易所(如果我喜欢冒险)的每个符号的价格和数量.有谁知道这些信息的来源?

我发现这个问题表明雅虎提供了CSV格式的历史数据,但我一直无法找到如何粗略地检查链接的网站.

我也不喜欢在CSV文件中逐个下载数据的想法...我想雅虎会在最初的几千个请求之后感到不安并关闭我.

我还发现了另一个让我觉得自己中了大奖的问题,但不幸的是,OpenTick网站似乎已经关门了......太糟糕了,因为我觉得它们正是我想要的.

我也可以使用每天只打开/关闭价格和每个符号的数量的数据,但如果我能得到它,我更喜欢所有的数据.还有其他建议吗?

simulation finance artificial-intelligence stocks

238
推荐指数
11
解决办法
17万
查看次数

如何在onClick处理程序中转义JavaScript代码中的字符串?

也许我只是在考虑这个问题,但是我在查找链接的onClick处理程序中某些JavaScript代码中的字符串转义时遇到了什么问题.例:

<a href="#" onclick="SelectSurveyItem('<%itemid%>', '<%itemname%>'); return false;">Select</a>
Run Code Online (Sandbox Code Playgroud)

<%itemid%><%itemname%>在哪里模板替换发生.我的问题是项目名称可以包含任何字符,包括单引号和双引号.目前,如果它包含单引号,则会破坏JavaScript代码.

我的第一个想法是使用模板语言的函数来JavaScript转义项目名称,它只是逃避引号.这不会修复包含双引号的字符串的情况,该双引号会破坏链接的HTML.这个问题通常是如何解决的?我是否需要HTML-escape整个onClick处理程序?

如果是这样,那看起来真的很奇怪,因为模板语言的转义函数也会使括号,引号和分号HTML化......

正在为搜索结果页面中的每个结果生成此链接,因此无法在JavaScript标记内创建单独的方法,因为我需要为每个结果生成一个.

此外,我正在使用我工作的公司本土化的模板引擎,因此特定于工具包的解决方案对我来说毫无用处.

html javascript string escaping

64
推荐指数
5
解决办法
12万
查看次数

C++的箭头( - >)运算符的官方名称是什么?

我总称它为"箭头操作员",但我确信它有正式名称.我很快浏览了C++标准,并没有看到它的名字.

c c++ terminology operators

43
推荐指数
4
解决办法
1万
查看次数

如何获得std :: map的std ::键集

今天早上我正在写一个算法,我遇到了一个奇怪的情况.我有两个std::map.我想在每个键的各组键上执行一组交集(找到两个键共有的键).在未来的某个时刻,我认为我也可能也希望在这里执行set减法.幸运的是,STL包含了这两种操作的功能.问题是,我似乎无法从中得到一把std::set钥匙std::map.有没有办法做到这一点?我正在寻找一些简单的东西,就像在Java中一样:

std::set<Foo> keys = myMap.getKeySet();
Run Code Online (Sandbox Code Playgroud)

我的理解是我不能std::set_intersection()直接在迭代器上使用函数到地图中,因为地图暴露了std::pair对象而不仅仅是键.此外,我不认为地图保证顺序.我也有兴趣在一对std::multimaps 上执行相同的操作,如果这有任何区别的话.

编辑:我最初忘了提到由于我被迫使用的编译器的年龄(MSVC++ 6),大多数在boost中可用的漂亮模板技巧都无法使用.

c++ stl map set

34
推荐指数
5
解决办法
4万
查看次数

如何将Flex文本控件转换为自动换行

我正在创建一个Adobe Flex应用程序,我有一个Text控件(mx:Text),当你需要多行不可编辑的文本时(而不是Label,它是单行不可编辑的文本),它应该被使用.当我将浏览器窗口调整为小于文本(或者在浏览器窗口已经较小时加载它)时,我的文本控件不会换行.在查阅我发现的这个文档后,如果指定绝对宽度(以像素为单位),似乎只会发生自动换行功能.这正是我想要避免的.我希望文本换行以适应我的Flash对象的大小,以便它始终可见...有没有办法实现这一点,通过一些我缺少的属性或者可能是一个不同的控件?谢谢.

apache-flex text word-wrap

33
推荐指数
3
解决办法
5万
查看次数

C++协变模板

我觉得之前已经问过这个问题,但我无法在SO上找到它,也无法在Google上找到任何有用的信息.也许"covariant"不是我正在寻找的词,但这个概念与函数的协变返回类型非常相似,所以我认为它可能是正确的.这是我想要做的,它给了我一个编译器错误:

class Base;
class Derived : public Base;

SmartPtr<Derived> d = new Derived;
SmartPtr<Base> b = d; // compiler error
Run Code Online (Sandbox Code Playgroud)

假设这些课程充分充实......我想你明白了.它不能转换SmartPtr<Derived>SmartPtr<Base>某种不明原因.我记得在C++和许多其他语言中这是正常的,虽然目前我不记得为什么.

我的根本问题是:执行此赋值操作的最佳方法是什么?目前,我正在将指针拉出,将其SmartPtr明确地向上转换为基类型,然后将其包装为新SmartPtr的适当类型(请注意,这不会泄漏资源,因为我们的本地SmartPtr类使用侵入式引用计数).那是漫长而凌乱的,尤其是当我需要将SmartPtr另一个对象包裹起来时...任何快捷方式?

c++ templates covariance

17
推荐指数
3
解决办法
5846
查看次数

img onload在IE7中不能很好地工作

我的webapp中有一个img标记,它使用onload处理程序来调整图像大小:

<img onLoad="SizeImage(this);" src="foo" >
Run Code Online (Sandbox Code Playgroud)

这在Firefox 3中工作正常,但在IE7中失败,因为传递给SizeImage()函数的图像对象由于某种原因的宽度和高度为0 - 也许IE在完成加载之前调用该函数?在研究这个问题时,我发现其他人对IE也存在同样的问题.我还发现这不是有效的HTML 4.这是我们的doctype,所以我不知道它是否有效:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)

在加载图像时是否有合理的解决方案来调整图像大小,最好是符合标准的图像?该图像用于用户上传自己的照片,几乎可以是任何尺寸,我们希望以最大150x150的速度显示它.如果您的解决方案是在上传时调整图像服务器端的大小,我知道这是正确的解决方案,但我禁止实现它:(必须在客户端完成,并且必须在显示时完成.

谢谢.

编辑:由于我们的应用程序的结构,在文档的onload中运行此脚本是不切实际的(接近不可能).我只能合理地编辑图像标签及其附近的代码(例如我可以<script>在它下方添加一个右侧).此外,我们已经拥有Prototype和EXT JS库......管理层更愿意不必添加另一个(一些答案提示jQuery).如果可以使用这些框架解决这个问题,那就太棒了.

编辑2:不幸的是,我们必须支持Firefox 3,IE 6和IE 7.我们也希望支持所有基于Webkit的浏览器,但由于我们的网站目前不支持它们,我们可以容忍只能在大3.

html javascript internet-explorer image

14
推荐指数
2
解决办法
3万
查看次数

在Windows上查找文件的MIME类型

有没有办法在Windows上使用某些系统调用来获取文件的MIME类型?我正在用C++编写IIS扩展,所以它必须可以从C++中调用,如果有一些功能暴露,我确实可以访问IIS.显然,IIS本身必须能够做到这一点,但我的谷歌搜索一直无法找到如何.我确实在SO上找到了这个与.net相关的问题,但这并没有给我太多的希望(因为那里既没有提到好的解决方案也没有提到C++解决方案).

我需要它,所以我可以使用我的应用程序中的相应内容类型提供动态文件.我的计划是首先查看我的应用程序中的MIME类型列表,然后回退到系统的MIME类型列表(但是这样可行;显然它存在,因为它是文件与程序关联的方式).在某些情况下我只有一个文件扩展名可以使用,但在其他情况下,我可能有一个实际的磁盘文件要检查.由于这些不是用户上传的文件,我相信我可以信任扩展,我更喜欢仅扩展的查找解决方案,因为它看起来更简单,更快.谢谢!

c++ windows mime-types

12
推荐指数
1
解决办法
7589
查看次数

为什么这个可变借用超出了它的范围?

在我期望可变借用结束之后,我遇到了关于同时使用可变和不可变借用的令人困惑的错误。我对类似问题(1 , 2 , 3 , 4 , 5)进行了大量研究,这让我相信我的问题与词法生命周期有关(尽管打开 NLL 功能并每晚编译并没有) t 改变结果),我只是不知道是什么;我的情况似乎不适合其他问题的任何场景。

pub enum Chain<'a> {
    Root {
        value: String,
    },
    Child {
        parent: &'a mut Chain<'a>,
    },
}

impl Chain<'_> {
    pub fn get(&self) -> &String {
        match self {
            Chain::Root { ref value } => value,
            Chain::Child { ref parent } => parent.get(),
        }
    }

    pub fn get_mut(&mut self) -> &mut String {
        match self {
            Chain::Root { ref mut value } => …
Run Code Online (Sandbox Code Playgroud)

rust borrow-checker

11
推荐指数
1
解决办法
476
查看次数