javascript에서 배열의 요소를 설정 해제하려면 어떻게 해야 합니까?
배열 정보에서 키 'bar'를 제거하여 'bar'가 표시되지 않도록 하는 방법
for(key in foo){alert(key);}
배열에서 요소를 제거하지 않으므로 삭제를 사용하지 마십시오. 배열의 길이에 올바르게 반영되지 않습니다.
키를 알고 있다면 스플라이스를 사용해야 합니다.
myArray.splice(key, 1);
Steven의 입장에 있는 누군가에게 당신은 다음과 같은 것을 시도할 수 있습니다.
for (var key in myArray) {
if (key == 'bar') {
myArray.splice(key, 1);
}
}
아니면
for (var key in myArray) {
if (myArray[key] == 'bar') {
myArray.splice(key, 1);
}
}
delete foo[key];
:D
키 이름을 알고 있으면 다음과 같이 하십시오.
delete array['key_name']
참고 사항: 자바스크립트 어레이는 PHP에서 익숙할 수 있는 것과 같은 연관 배열이 아닙니다.배열 키가 문자열이면 배열의 내용에 대해 더 이상 작동하지 않습니다.배열은 개체이며 괄호 표기를 사용하여 <key name>이라는 멤버에 액세스하고 있습니다.따라서:
varmyArray = [];myArray["bar"] = true;myArray["foo"] = true;alert(myArray.length); // 0을 반환합니다.
배열에 요소를 추가하지 않았기 때문에 myArray의 바 및 foo 멤버만 수정했습니다.
저는 이렇게 합니다.
myArray.splice( myArray.indexOf('bar') , 1)
http://www.internetdoc.info/javascript-function/remove-key-from-array.htm
removeKey(arrayName,key);
function removeKey(arrayName,key)
{
var x;
var tmpArray = new Array();
for(x in arrayName)
{
if(x!=key) { tmpArray[x] = arrayName[x]; }
}
return tmpArray;
}
삭제와 스플라이스 사이에는 중요한 차이가 있습니다.
원본 배열:
[<빈항목 1개>, '1개', <빈항목 3개>, '5개', <빈항목 3개>, '9개']
스플라이스 후(array.splice(1,1)):
[ <4개의 빈 항목>, <5개의 빈 항목>, <3개의 빈 항목>, <9개의 빈 항목>]
AFTER DELETE(배열 삭제[1]):
[ <5개의 빈 항목>, <5개의 빈 항목>, <3개의 빈 항목>, <9개의 빈 항목>]
언급URL : https://stackoverflow.com/questions/206988/how-do-i-unset-an-element-in-an-array-in-javascript
'programing' 카테고리의 다른 글
Swift에서 스레드 안전 배열 만들기 (0) | 2023.11.06 |
---|---|
삽입 문으로 MySQL 내보내기 쿼리 (0) | 2023.11.06 |
무한대 = 0x3f3f3f인 이유는 무엇입니까? (0) | 2023.11.06 |
SQL Server 2008에서 Service Broker 사용 (0) | 2023.11.06 |
ASP에서 버튼에 대한 유효성 검사를 무시하는 방법.NET? (0) | 2023.11.06 |