Skip to content

error TS2365: Operator '+' cannot be applied to types 'Number' and 'Number'. #2031

Closed
@jimlloyd

Description

@jimlloyd

Given index.ts:

var a: Number = new Number(1);
var b: Number = new Number(2);
var c: number = 3;
console.log(a+b);
console.log(b+c);

When compiled, the compiler produces these errors:

index.ts(4,13): error TS2365: Operator '+' cannot be applied to types 'Number' and 'Number'.
index.ts(5,13): error TS2365: Operator '+' cannot be applied to types 'Number' and 'number'.

But if I don't use --noEmitOnError, the compiler produces this index.js:

var a = new Number(1);
var b = new Number(2);
var c = 3;
console.log(a + b);
console.log(b + c);

Which I can run with node and get expected results:

$ node index.js 
3
5

Why does the compiler refuse to allow addition of two Numbers, or a Number and a number?

Metadata

Metadata

Assignees

No one assigned

    Labels

    By DesignDeprecated - use "Working as Intended" or "Design Limitation" instead

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions