CNode

一个babel-plugin让javascript支持重载运算符

分享
Ggzz2000发布于9 年前最后回复9 年前1 回复4734 浏览0 收藏

Github

欢迎大家提建议

效果:

class Point {
    x = 0;
    y = 0;

    constructor(_x, _y) {
		if(_x) this.x = _x;
		if(_y) this.y = _y;
    }

    operatorAdd = (b) => {
		const a = this;
		return new Point(a.x + b.x, a.y + b.y);
    }

    operatorMul = (b) => {
		const a = this;
		return new Point(a.x * b, a.y * b);
    }
};

let a = new Point(1, 2), b = new Point(3, 4);

console.log(a + b * 3);
查看回复

回复 (1)

I
ianchn#1·9 年前

JavaScript 元编程 :doge:

参与回复
登录后即可参与回复。登录