developer tip

JavaScript에서 배열이 존재하는지 확인하는 방법은 무엇입니까?

optionbox 2020. 11. 26. 08:12
반응형

JavaScript에서 배열이 존재하는지 확인하는 방법은 무엇입니까?


특정 어레이가 존재하는지, 그렇지 않은 경우 생성되는지 어떻게 확인합니까?


배열 x가 존재하는지 확인하고 존재하지 않는 경우 생성하려면 다음을 수행 할 수 있습니다.

x = ( typeof x != 'undefined' && x instanceof Array ) ? x : []

var arr = arr || [];

const list = Array.isArray(x) ? x : [x];

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray

또는 배열 x 있고 하나인지 확인하려는 경우 :

const list = [].concat(x);

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat


당신이 사용할 수있는 typeof연산자 에 대한 테스트에 정의되지 않은instanceof운영자 가 인스턴스의 경우 시험에를 배열은 :

if (typeof arr == "undefined" || !(arr instanceof Array)) {
    var arr = [];
}

당신이 개체가 이미 배열 인 경우 피하기 위해, 확인하고 싶은 경우 잘 알려진 문제instanceof멀티 액자 DOM의 환경에서 작업하는 작업자를, 당신은 사용할 수있는 Object.prototype.toString방법을 :

arr = Object.prototype.toString.call(arr) == "[object Array]" ? arr : [];

<script type="text/javascript">

array1  = new Array('apple','mango','banana');
var storearray1 =array1;

if (window[storearray1] && window[storearray1] instanceof Array) {
    alert("exist!");
} else {
    alert('not find: storearray1 = ' + typeof storearray1)
    }

</script>   

브라우저 환경에 대해 이야기하는 경우 모든 전역 변수는 창 개체의 구성원입니다. 따라서 확인하려면 :

if (window.somearray !== undefined) {
    somearray = [];
}

참고 URL : https://stackoverflow.com/questions/1961528/how-to-check-if-an-array-exist-if-not-create-it-in-javascript

반응형