練炭ブログ

萌え壁紙、Irvine、DMonkey、Proxomitron などの情報を扱ってます。

DMonkey: 関数を返すと元の関数と==にならない

コメントなし»

http://peace.2ch.net/test/read.cgi/win/1437882775/388 より引用。

388 :名無し~3.EXE:2015/11/03(火) 18:09:45.24 ID:J6VV5WH0
function test(f){return f;}
var fn = function(){};
alert(fn == test(fn)); //false

DMonkeyだと何故これがfalseになるんだろう?

確かに……。

分解して調べてみます。

function x () { }
function xx () { return x; }

(function (f) {
  alert (f == x);  // true
}) (x);

alert (xx () == x);  // false

引数として渡す時は問題なく、戻り値として受け取った値が == にならないようです。