小编Mar*_*une的帖子

函数是javascript对象属性的有效键吗?

我想在javascript对象中使用函数作为键.以下工作,至少在Chrome中:

var registry = {};
function Foo(){  };
function Bar(){  };
registry[Foo] = 42;
registry[Bar] = 43;
alert(registry[Foo] + " < " + registry[Bar]);
Run Code Online (Sandbox Code Playgroud)

这是否符合标准?它支持哪些浏览器?

javascript

13
推荐指数
2
解决办法
6182
查看次数

Rails中的JavaScript单元测试3.1

我想知道什么是最简单的方法来进行JavaScript 单元测试作为Rails 3.1应用程序的一部分.

我非常喜欢Jasmine并且效果很好(虽然它需要一些技巧才能获取.coffee文件).

我使用Jasmine的唯一问题是它在一个巨大的页面中运行所有测试示例,这是非常有问题的,因为它需要加载所有脚本.

我真正想要的是Jasmine +多个文件中的多个测试套件(因此它生成多个html文件,包括spec文件).

除此之外,我想在浏览器,无头或JS引擎内运行测试(希望很容易)(如果可能的话).

有什么建议?

javascript ruby unit-testing ruby-on-rails ruby-on-rails-3.1

12
推荐指数
2
解决办法
3057
查看次数

异步发出多个HTTP请求

require 'net/http'

urls = [
  {'link' => 'http://www.google.com/'},
  {'link' => 'http://www.yandex.ru/'},
  {'link' => 'http://www.baidu.com/'}
]

urls.each do |u|
  u['content'] = Net::HTTP.get( URI.parse(u['link']) )
end

print urls
Run Code Online (Sandbox Code Playgroud)

此代码以同步方式工作.第一个请求,第二个,第三个.我想异步发送所有请求并urls在完成所有请求后打印.

最好的办法是什么?纤维是否适合这种情况?

ruby concurrency asynchronous fiber

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

在YAML条目开始时逃离&(&符号)?

YAML条目开头的&符号通常被视为一组数据的标签,可以在以后引用.如何在YAML条目开始时逃避合法的&符号.例如:

---
- news:
    news_text:“ Text!’

我希望不会在yaml文件中成为标签,而是当我解析Y​​AML文件以使news_text返回时使用“ 在条目中.

yaml

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

Marshal ruby​​ hash with default proc - 删除默认的proc?

我有一个带有默认proc的哈希,我想将Marshal设置为一个文件,但默认的proc会阻止我这样做.

而不是写我自己_dump_load方法,是有可能,而不是删除默认PROC呢?在我编组时,我永远不会再需要默认的proc.

ruby hash marshalling

11
推荐指数
2
解决办法
2007
查看次数

如何在kinect中实现波形手势?

我想使用手势,因此kinect可以选择以手势为主要玩家的人.在此之后,他可以控制PC.选择该人并给予他们控制权已完成.现在我必须实现一个手势,但我不知道如何开始.

谁能帮我?

c# gesture-recognition gesture kinect

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

coffeescript扩展类构造函数

 class RedGuy
       constructor : (@name) ->
           @nameElem = $ @name
           @nameElem.css color : red

 class WideRedGuy extends RedGuy
       constructor : ->
           @nameElem.css width : 900

 jeff = new WideRedGuy '#jeff'
Run Code Online (Sandbox Code Playgroud)

我想要#jeff既红又宽,但我总是得到this.name is undefined.如何扩展构造函数(追加?)以便我可以访问原始对象的属性?

oop coffeescript

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

Ruby中的"和","或"运算符背后有智慧吗?

我不知道为什么红宝石给and,or少优先级比&&,||和赋值运算符?有什么缘故吗?

ruby operators logical-operators

10
推荐指数
3
解决办法
1204
查看次数

如何查看git log以进行"快进"合并?

在下面的示例中,有没有办法知道合并发生了?看着git log,我不能告诉我合并了.

# setup example directory
$ mkdir test
$ cd test
$ git init
$ touch a
$ git add a
$ git commit -m "1"

# switch to different branch
$ git checkout -b topic
$ touch b
$ git add b
$ git commit -m "2"

# go back to master and merge
$ git checkout master
$ git merge topic

# git log

commit cccc64de3947828f487a8ce3c3e72b0f68dc88c3
Author: none
Date:   Fri May 20 05:54:45 2011 -0700

    2

commit …
Run Code Online (Sandbox Code Playgroud)

git

10
推荐指数
1
解决办法
4405
查看次数

Ruby数组到索引哈希?

我经常发现自己在Ruby中构建查找表,通常是为了缓存一些昂贵的计算或构建我传递给视图的东西.我认为必须有一个简短的,可读的成语,但我们想不到一个.例如,假设我想开始

[65, 66, 67, ...]
Run Code Online (Sandbox Code Playgroud)

并最终得到

{65 => "A", 66 => "B", 67 => "C", ...}
Run Code Online (Sandbox Code Playgroud)

我们能想到的不太合适的习语包括:

array = (65..90).to_a

array.inject({}) {|hash, key| hash[key]=key.chr; hash}
{}.tap {|hash| array.each {|key| hash[key] = key.chr}}
Hash[array.zip(array.map{|key| key.chr})]
Run Code Online (Sandbox Code Playgroud)

但所有这些都有点痛苦:难以阅读,容易搞砸,意图不明确.当然Ruby(或者一些Rails助手)对此有一些很好的魔力?

ruby ruby-on-rails

10
推荐指数
2
解决办法
3852
查看次数