小编K2x*_*2xL的帖子

Javascript原型与一般功能 - 性能/可读性

所以我写了这些测试,看看使用原型会有多快...

function User() {
    return {
        name: "Dave",
        setName: function(n) {
            this.name = n;
        },
        getName: function() {
            return this.name;
        }
    };
}

function UserPrototype() {
    if (!(this instanceof UserPrototype)) return new UserPrototype();
    this.name = "Dave";
}
UserPrototype.prototype.getName = function() {
    return this.name;
};
UserPrototype.prototype.setName = function(n) {
    this.name = n;
};

function setName(obj,name)
{
    obj.name = name;
}
function getName(obj)
{
    return obj.name;
}

//Test 1
var c = 10000000;
var tstart = 0;
var tend = 0;
tstart …
Run Code Online (Sandbox Code Playgroud)

javascript prototype

6
推荐指数
1
解决办法
1008
查看次数

带有Mongoid的Rails模块

我正在尝试将我的一些模型类扩展为"资产"类.四种类型的资产中的每一种都能够生成一个slug.set_callback(:save, :before)因此,我希望它们扩展一个具有set_callback(以及其他方法)的Asset类,而不是编写四个相同的方法. .

起初我尝试简单地让他们扩展Asset类但我遇到了问题,当我将其中一个资产保存到数据库(mongo)时,他们插入的集合称为Asset而不是他们自己的名字.

在我用Google搜索后,人们似乎建议使用模块.所以我试过了:

module Asset
  field :slug, :type => String

  set_callback(:save, :before) do |document|
    # make document.slug = to whatever
  end
end

class Video
  include Mongoid::Document
  include Asset
  field :video_name, :type => String
  field :description, :type => String
  field :some_more_fields, :type => String
end
Run Code Online (Sandbox Code Playgroud)

但是当我包含资产时我遇到了一些错误:

'undefined method `field' for Asset:Module'
Run Code Online (Sandbox Code Playgroud)

注意:我正在使用Mongoid

ruby ruby-on-rails mongodb mongoid

5
推荐指数
1
解决办法
1573
查看次数

Ruby.每个效率

我(在我看来):

# myUser is a User in ActiveRecord with :has_many :posts
myUser.posts.each do |post|
end
Run Code Online (Sandbox Code Playgroud)

如果用户有十个帖子,这会是十次进行数据库调用吗?这些循环应该是(不太漂亮)吗?:

myPosts = myUser.posts
myPosts.each do |post|
end
Run Code Online (Sandbox Code Playgroud)

是我测试的ruby文件的粘贴框.编辑修改了粘贴箱.

这让我想起了Java中的代码

for (int i = 0; i < someExpensiveFunction(); i++)
Run Code Online (Sandbox Code Playgroud)

应该是(除非数组被修改)

for (int i = 0, len=someExpensiveFunction(); i < len; i++)
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?我看到一堆轨道示例,其中人们循环通过has_many对象的某个字段.这对我很重要,因为我正在尝试优化应用程序的性能.

ruby performance activerecord ruby-on-rails

5
推荐指数
1
解决办法
306
查看次数

从 Lua 中的数组中删除多个元素

在 Lua 中,我知道有

table.remove(array, index)
Run Code Online (Sandbox Code Playgroud)

有没有一种快速的方法可以从数组中删除和返回 X 元素(而不仅仅是重复调用 table.remove)?

lua lua-table

5
推荐指数
1
解决办法
2246
查看次数

更改 Nginx 自动索引的排序

我正在将autoindexnginx 用于列出一堆文件夹的特定端点。是否可以将排序方向从按字母顺序更改为按修改日期?

nginx

5
推荐指数
1
解决办法
5835
查看次数

在css3颜色中使用数据属性

我试图根据值为进度条着色.

progress[value]::-webkit-progress-value {
    position: relative;
    background-color: rgba(0, attr(value) ,0,1);
    background-size: 35px 20px, 100% 100%, 100% 100%;
    border-radius:3px;

    /* Let's animate this */
    animation: animate-stripes 5s linear infinite;
}
Run Code Online (Sandbox Code Playgroud)

看起来像attr(值)似乎不起作用 - 有没有办法在那里注入价值?使用铬

css css3

5
推荐指数
1
解决办法
493
查看次数

Java并发增量值

我一直在阅读volatile和阅读synchronizedJava,但一直在困惑中摸不着头脑.我希望有人可以帮我解决问题

private HashMap<String,int> map = new HashMap<String,int>();
Run Code Online (Sandbox Code Playgroud)

在我的线程中

if (map.get("value") == null)
{
map.put("value",0);
}
map.put("value",map.get("value")+1);
Run Code Online (Sandbox Code Playgroud)

我的目标是让所有线程分享这个map.如果我添加volatile它似乎并没有解决我的问题(我输出并看到map每次都被覆盖).然后我尝试使用ConcurrentHashMapvolatile在前面添加...这似乎也没有用.根据我的阅读,volatile我的理解是它应该"锁定"对写入map时的访问权限map,然后在map写入锁定时完成.

所以...然后我尝试添加 static

private static ConcurrentHashMap<String,int> map = new ConcurrentHashMap<String,int>();
Run Code Online (Sandbox Code Playgroud)

这看起来很完美......但是......我一直在读,static由于"争用"(我不太明白),使用不是正确的方法

提前致谢

java concurrency multithreading thread-safety

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

使用JQuery寻找HTML视频

我正在尝试寻找视频的特定部分,我想使用JQuery.

$('#video').currentTime给我未定义.有什么我想念的吗?

(document.getElementById("video").currentTime作品)

video jquery html5

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

Rails从模型生成迁移

我一直在阅读有关Rails迁移的内容,以帮助我开始构建rails项目.

我对db/migrate中的文件生成感到困惑.

我设计应用程序的方式是从模型开始......尽可能地概述我将在系统中拥有的所有对象.我想使用rails迁移生成器自动生成这些模型的迁移文件.

是的,我知道"手动创建迁移很容易." 我知道我可以手动完成,但我不明白的是为什么该工具与预先创建的模型分开.

根据我对文章的理解以及关于SO的其他迁移问题,我可以生成如下迁移:

rails generate migration SomeObj field:string some_other_field:integer
Run Code Online (Sandbox Code Playgroud)

我没有得到的是为什么当我的模型已存在于SomeObj时我需要传入字段?Rails无法从some_obj.rb中检测到它并从那里创建迁移吗?

此外,当我有一个更复杂的模型,使用has_many,belongs_to和has_to_and_belongs_to_many关系时,如果它使用正确的名称自动处理JOIN表和字段(例如foreign_obj_id,foreign_obj_ids),那将是非常好的.

在之前的项目中,我没有处理迁移,因为我使用了Mongo + Mongoid - 由于Mongo工作原理的性质而自动生成集合(不存在的集合在插入或更新时自动创建).现在使用这个Rails应用程序我正在使用Postgres(但我确信MySQL或任何其他关系数据库会发生同样的事情).

无论如何,这种事情没有帮手吗?我是否必须手动创建所有这些迁移?

ruby ruby-on-rails

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

在Bamboo部署计划中获取分支名称

如何在竹子中获取部署计划的脚本中的分支名称?文档中列出的变量显示我们可以使用bamboo.repository.branch.name,但这似乎不适用于部署计划.

bamboo

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