다른 속성 (SQL에서) 예를 들어자바 스크립트 객체 속성
의 값에서 하나의 객체 속성을 얻을 수있는 방법이 ID 객체 에서object.name = "somename"GET 있습니까?
개체의 ID를 가져올 필요가 있지만 이름 만 알고 있습니다.
이 기능을 사용할 수다른 속성 (SQL에서) 예를 들어자바 스크립트 객체 속성
의 값에서 하나의 객체 속성을 얻을 수있는 방법이 ID 객체 에서object.name = "somename"GET 있습니까?
개체의 ID를 가져올 필요가 있지만 이름 만 알고 있습니다.
이 기능을 사용할 수내가 당신을 가정 할 것이다 것은 노력하고있다 객체의 배열로이를 수행하는 것은 그렇지 않다는 이유에서입니다.
원하는 브라우저 지원에 따라 이라는 메서드가 Array.prototype
에 있습니다. 필요하다면 너무 심을 수 있습니다. 여기
var list = [
{id:1, name:'bob'},
{id:2, name:'jim'},
{id:3, name:'sam'},
{id:4, name:'tim'}
];
var sams = list.filter(function(obj){
return obj.name == 'sam';
});
console.log(sams[0].id);
가 jsfiddle 링크입니다 :
코드는 다음과 같이 뭔가를 찾고 끝낼 것 http://jsfiddle.net/g8rTA/
배열을 통해 필터링하려고한다는 것이 명확하지 않았던 것 같습니다. 도움을 주셔서 감사합니다 –
+1'필터'접근 방식과 그 언급은 어디서나 지원되지 않습니다 :) – Jashwant
그것을 얻을 수 있습니다 :
function getObjectByAttribute(list, attr, val){
var result = null;
$.each(list, function(index, item){
if(item[attr].toString() == val.toString()){
result = item;
return false;
}
});
return result;
}
var obj = getObjectByAttribute(yourList, 'name', 'somename');
if(obj) console.log(obj.id);
편집 :
@nnnnnn가 제안한 것처럼, 비 jQuery를 대체 :
function getObjectByAttribut(list, attr, val){
var result = null;
for(var ind in list){
if(list[ind][attr] == val) return list[ind];
}
return null;
}
jQuery없이 jQuery를 사용하지 않고'$ .each() 대신 일반 for 루프를 사용하십시오.)'. 'result' 변수가 필요 없다고 제안 할 수 있습니까? 발견되면'item'을 직접 반환하고, 발견되지 않으면'null'을 직접 반환합니다 (또는 발견되지 않은 값으로'undefined'를 사용하고 마지막으로'return' 문도 필요 없습니다). – nnnnnn
그래, 네 말이 맞아, 내가 그걸 고려해야 했어. false를 반환하는 것과 관련하여 jQuery에서 false가 아닌 값을 반환하면 각 루프가 false 루프에서 continue 문과 같이 작동하고 false를 반환하면 루프가 손상됩니다. – davids
사과드립니다. 내 마음 속에는 이미 비 jQuery 버전으로 뛰어 올랐지 만'$ .each() '와 함께 물론 당신이 말한 것처럼'result'가 필요하다. – nnnnnn
귀하의 질문은 나에게 분명하지 않다, 그러나 나는이 라인에 대답하고있다.
다른 속성의 값에서 하나의 개체 속성을 가져 오는 방법이 있습니까?
var obj = {
'name' : 'ramesh',
'surname' : 'suresh'
}
var obj2 = {
'props' : 'name',
'method' : 'blah'
}
for(var i in obj){
if(obj.hasOwnProperty(i)){
if(i === obj2['props']){
console.log('Found ' + i); // This will find 'name'
break;
}
}
}
목록에있는 개체입니까? – davids
그 개체가 목록에 있습니까? – david
^확률이란 무엇입니까? – Daedalus