컨트롤러에 myList
이라는 객체 배열이 있습니다."this"를 사용하여 자신을 참조하는 배열 객체에 함수 할당
개체의 배열에 이미 특정 ID가있는 개체가 있는지 확인하는 것이 좋습니다.
은 개체의 구조는 다음과 같습니다 컨트롤러의 다른 곳에서 내 코드에서 나중에 지금
function onInit() {
$log.debug(ctrl);
ctrl.myList.includes = function(id) {
var found = false;
for (var index=0; index < this.length; index++) {
if (this[index].id === id) {
found = true;
break;
}
}
return found;
}
}
:
myList: [
{
id: <integer>,
.
.
.
},
...
]
이 var ctrl = this;
되어 있다고 가정하고, 내 컨트롤러 내에서 내의 onInit 기능에
if (!ctrl.myList.includes(id) {
// Do something...
}
this
을 사용하는 적절한 방법입니다. myList
에 할당 된 includes
함수의 키워드는 무엇입니까? 콘솔에 오류가 발생하지 않습니다. 구문 적으로는 올바르지 만 작동하지 않습니다. 아마도 이렇게하는 것이 좋습니다.
감사합니다.
, '기능 includesId (ID) {! ctrl.myList.find 창 (항목 => 아이템. id === id); }' –
최신 브라우저에는 이미 ['Array.prototype.includes()'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes) 메소드가 있습니다. – Andreas
@ Andreas - 이전 버전의 브라우저를 지원해야합니다. –