方法、hasOwnProperty()
方法はobject
は、指定されたproperty
として自身(not inherited)
性質を持っているかどうかを示すboolean
を返します。このメソッドは、in
演算子とは異なり、object
が指定されたプロパティをそのオブジェクトの直接プロパティとして持つかどうかを判断するために使用できますが、このメソッドはオブジェクトのプロトタイプチェーンをチェックしません。
Array.prototype
を使用して、ご使用のアレイにprototype
を定義することができます。 Array.prototype
プロパティは、Arrayコンストラクタのprototype
を表し、すべてのArray
オブジェクトに新しいプロパティとメソッドを追加できます。
私はあなたの機能を次のように更新しました。役立つことを願っています。
var arrayC = [{
name: "omer",
age: 16,
city: "pakistan"
},
{
name: "ali",
age: 26,
city: "pakistan"
}
];
// If JavaScript doesn't provide a assoc_search() method natively,
if (!Array.prototype.assoc_search) {
// returns after finding the first match for the given key => value pair and return the value
Array.prototype.assoc_search = function(what, array_key) {
let where = this;
for (var key in where) {
if (where[key].hasOwnProperty(array_key) && where[key][array_key] == what) {
return where[key][array_key];
}
}
return false;
};
}
var result = arrayC.assoc_search("omer", "name");
(result) ? console.log('found ' + result): console.log('not found ');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
あなたは連想配列を使用すると、 'VAR人= {firstNameの "ジョン"、lastNameの: "ドウ"、年齢:46}のようないくつかのことを意味すると言うとき、' –
@MuhammadOmerAslam、などを'var names = {{firstName:" John "、lastName:" Doe "、年齢:46}、{firstName:" Tom "、lastName:" Dav "、age:25}たとえば、 – NisuSan
があなたに答えを追加しました –