「usestrict」でarguments.calleeが許可されておらず、実行できない場合
var f = function g() {
//g
}
IEでは機能しない(または「奇妙に」機能する)http://kangax.github.com/nfe/#jscript-bugsので、関数内の無名関数を参照する必要がある他のオプションは何ですか?自体?
「usestrict」でarguments.calleeが許可されておらず、実行できない場合
var f = function g() {
//g
}
IEでは機能しない(または「奇妙に」機能する)http://kangax.github.com/nfe/#jscript-bugsので、関数内の無名関数を参照する必要がある他のオプションは何ですか?自体?
名前付き関数式は使用しないでください。通常の方法で宣言して初期化します。
function f() {
f();
}
ES5 strictで実行可能な唯一の代替手段は、質問のコードを使用し、IEのくだらないNFE実装に対処することです。しかし:NFEをひどく間違ったものにするブラウザー(ええと、IE)が"use strict"
すぐに実装されることを本当に期待していますか?
これを行うにはかなり複雑な方法がありますが、うまくいきます:
var f = function() {
function f() {
if (confirm('Keep going?')) {
this.apply(this);
}
}
f.apply(f);
}
f();