読者です 読者をやめる 読者になる 読者になる

レガシーコード生産ガイド

私に教えられることなら

Yコンビネーター勉強前にif

//if
var True = function (x) {
    return function (y) {
        return x;
    };
};

var False = function (x) {
    return function (y) {
        return y;
    };
};

var If = function (b) {
    return b === true ? True : False;
};

function test (cond) {
    var result = If(cond)("success")("fail");
    console.log(result);
}

test(1 === 1);
test(1 !== 2);
test(NaN !== NaN);

test(
    If(true)(
        function () { return true; }
    )(
        function () { return false; } 
    )()
);

ひえー面白い!!

……と思ったんだけど、三項演算子って結局ifの代わりじゃない?あれ?

広告を非表示にする