ブラウザ環境でjsを使用して、任意のオブジェクトのプロパティが存在するかどうかをテストします.

542 ワード

function isHostMethod(object, property) {
	var t = typeof object[property];
	return t=='function' ||
	(!!(t=='object' && object[property])) ||
	t=='unknown';
}

//  
result = isHostMethod(xhr, "open"); //true
result = isHostMethod(xhr, "foo"); //false

現在isHostMethod()メソッドを使用しているのは、ブラウザの奇妙な動作を考慮しているため、信頼性が高い.ただし,宿主オブジェクトは現在の実現方式を一定に保つ義務はなく,既存の宿主オブジェクトの行為を模倣するとは限らないことに注意すべきである.だから、この関数--その他の類似の関数は、永遠に信頼できることを100%保証することはできません.開発者として、ある機能を使用するリスクを理性的に見積もる必要があります.