小编Voi*_*995的帖子

有没有办法在TypeScript中进行方法重载?

有没有办法在TypeScript语言中进行方法重载?

我希望实现这样的目标:

class TestClass {
    someMethod(stringParameter: string): void {
        alert("Variant #1: stringParameter = " + stringParameter);
    }

    someMethod(numberParameter: number, stringParameter: string): void {
        alert("Variant #2: numberParameter = " + numberParameter + ", stringParameter = " + stringParameter);
    }
}

var testClass = new TestClass();
testClass.someMethod("string for v#1");
testClass.someMethod(12345, "string for v#2");
Run Code Online (Sandbox Code Playgroud)

这是我不想做的一个例子(我真的很讨厌在JS中重载hack的那部分):

class TestClass {
    private someMethod_Overload_string(stringParameter: string): void {
        // A lot of code could be here... I don't want to mix it with switch or if statement in …
Run Code Online (Sandbox Code Playgroud)

javascript operator-overloading typescript

100
推荐指数
3
解决办法
6万
查看次数

为什么Node.JS中的V8比我的原生C++插件更快?

为什么我的C++插件中的Google V8 JavaScript引擎的工作速度明显慢于Node.JS?

我试着编写一些简单的代码来生成JavaScript中的素数,并通过我的C++插件在V8中运行,直接在Node.JS中运行.

我非常震惊,因为两者都应该使用相同的JavaScript引擎,并且两者都执行相同的代码(时间以毫秒为单位,越少越好):

V8 in Node.JS:  495517
V8 in Node.JS C++ Addon:  623598
Run Code Online (Sandbox Code Playgroud)

这是JavaScript模块的源代码和运行相同JavaScript代码的C++插件的源代码(我认为问题不在interop中,因为测量时间直接在JS中工作):

index.js:

var jsInNodeJsPrimeGeneratorBenchmark = require("./javascript.js");
var jsInNativePrimeGeneratorBenchmark = require("./native");

console.log("V8 in Node.JS: ", jsInNodeJsPrimeGeneratorBenchmark.primeGeneratorBenchmark());
console.log("V8 in Node.JS C++ Addon: ", jsInNativePrimeGeneratorBenchmark.primeGeneratorBenchmark());
Run Code Online (Sandbox Code Playgroud)

javascript.js:

function primeGeneratorBenchmark() {
    var result, primeNumberCounter, i, j, isPrime, start, end;

    i = 3;
    primeNumberCounter = 1;

    start = Date.now();

    while (primeNumberCounter < 100000) {
        isPrime = true;
        for (j = 2; j < i; j++) {
            if (i % …
Run Code Online (Sandbox Code Playgroud)

javascript c++ performance v8 node.js

27
推荐指数
1
解决办法
5402
查看次数