externalIE 以外のほとんどのブラウザには、existsという変数があることがわかりました。これに関して2つの質問があります
- 外部とは - http://jsfiddle.net/EVBjU/
- IE は
object doesn't support this property or method、console.log(external) を実行すると表示されます。単なる変数であることを考慮して、これを修正する方法
ありがとう
externalIE 以外のほとんどのブラウザには、existsという変数があることがわかりました。これに関して2つの質問があります
object doesn't support this property or method、console.log(external) を実行すると表示されます。単なる変数であることを考慮して、これを修正する方法ありがとう
「しかし、一般的に「オブジェクトはこのプロパティまたはメソッドをサポートしていません」を修正するにはどうすればよいですか」
objectobjを指定すると、プロパティ/メソッドpropが存在するかどうかを次のようにテストできます。
if ("prop" in obj) {
// do something with obj.prop
}
in...オペレーターは継承されたプロパティもチェックすることに注意してください。直接プロパティのみを確認するには、次を使用します。
if (obj.hasOwnProperty("prop")) {
// do something with obj.prop
}
「変数
externalが存在するかどうかを確認する方法はありますか」
externalあなたが言及したプロパティの場合、それが存在する場合のプロパティになるので、次のようになりますwindow。
if ("external" in window) {
// do something
}
このx in window手法は、ブラウザーによって提供されるものやユーザー定義のものを含むグローバル変数に対して機能します。ローカル変数では機能しません。