小编C. *_*wis的帖子

为什么这个函数调用的执行时间会发生变化?

前言

此问题似乎只影响 Chrome/V8,在 Firefox 或其他浏览器中可能无法重现。总之,如果在其他任何地方使用新回调调用函数,则函数回调的执行时间会增加一个数量级或更多。

简化的概念验证

test(callback)任意多次调用都按预期工作,但是一旦调用test(differentCallback)test无论提供什么回调,函数的执行时间都会显着增加(即,另一个调用test(callback)也会受到影响)。

此示例已更新为使用参数,以免优化为空循环。回调参数ab相加并添加到total记录的 中。

function test(callback) {
    let start = performance.now(),
        total = 0;

    // add callback result to total
    for (let i = 0; i < 1e6; i++)
        total += callback(i, i + 1);

    console.log(`took ${(performance.now() - start).toFixed(2)}ms | total: ${total}`);
}

let callback1 = (a, b) => a + b,
    callback2 = (a, b) => a + b;

console.log('FIRST …
Run Code Online (Sandbox Code Playgroud)

javascript v8 performance-testing chromium

60
推荐指数
2
解决办法
3133
查看次数

有没有办法“npm init” ES 模块?

所有现代版本的 Node 都需要运行包,因为模块位于"type": "module"package.json,但我没有看到任何标志npm inityarn init会添加该属性。

是否有包管理器的标志添加值的简单方法package.json(即,npm package-property set type module或类似的东西)?

javascript node.js npm es6-modules yarnpkg

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

GCP 上的电子邮件解决方案

我拥有 Hostgator 经销商帐户已超过 15 年,但我想退出。我正在将 10 个网站迁移到 Google Cloud Platform。过去,使用 Hostgator,使用 POP3 和 SMTP 设置电子邮件帐户非常简单。现在我是一名 Linux/Ubuntu 管理员新手,我必须弄清楚如何使用我自己的邮件服务器或其他解决方案获得相同的功能。我在 GCP 实例上运行 Ubuntu 18.04,并在 GCP 上安装了 Cyber​​panel。

你们中有人安装过 iRedmail 邮件服务器吗?您能否告诉我您对它的看法,以及它对于我想要实现的目标是否太过分了?我只是在寻找与 Hostgator 相同的 POP3 和 SMTP 简单电子邮件设置。

我曾经是一名 Windows 网络管理员,在我的一台 Windows 服务器上运行了 Kerio 邮件服务器,因此管理邮件服务器并不让我感到害怕。你的想法?

pop3 smtp mail-server google-cloud-platform iredmail

7
推荐指数
1
解决办法
2万
查看次数

如何用JS向一个元素添加多个类?

我有下面的JS代码:

<script>
    function CommentStyle() {
        var elementAuthor = document.getElementById("author");
        var elementEmail = document.getElementById("email");
        var elementUrl = document.getElementById("url");
        elementAuthor.classList.add("form-control ulockd-form-bps required email");
        elementEmail.classList.add("form-control ulockd-form-bps required email");
        elementUrl.classList.add("form-control ulockd-form-bps required email");
    }
    window.onload = CommentStyle;
    alert("Hello! I am an alert box!!");
</script>
ffee
<style>
    .form-control {
        border: 1px dashed #cccccc;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

警报有效,但未添加类。另外,我怎样才能缩短此代码,而不是为每个 id 添加新行,因为类是相同的?

javascript

3
推荐指数
1
解决办法
3268
查看次数