문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
wiki:javascript:javascript_note:js_arrays [2021/04/26 13:28] emblim98 [Avoid new Array()] |
wiki:javascript:javascript_note:js_arrays [2023/01/13 18:44] (현재) |
||
---|---|---|---|
줄 13: | 줄 13: | ||
\\ | \\ | ||
<code javascript> | <code javascript> | ||
- | < | + | let cars = [" |
- | | + | document.getElementById(" |
- | document.getElementById(" | + | |
- | </ | + | |
</ | </ | ||
줄 50: | 줄 48: | ||
공백과 줄 바꿈(line breaks)은 중요하지 않습니다. 선언은 여러 줄에 걸쳐있을 수 있습니다.\\ | 공백과 줄 바꿈(line breaks)은 중요하지 않습니다. 선언은 여러 줄에 걸쳐있을 수 있습니다.\\ | ||
<code javascript> | <code javascript> | ||
- | | + | let cars = [ |
- | " | + | " |
- | " | + | " |
- | " | + | " |
- | ]; | + | ]; |
</ | </ | ||
줄 200: | 줄 198: | ||
'' | '' | ||
<code javascript> | <code javascript> | ||
- | | + | let fruits, text; |
- | fruits = [" | + | fruits = [" |
- | | + | text = "< |
- | fruits.forEach(myFunction); | + | fruits.forEach(myFunction); |
- | text += "</ | + | text += "</ |
- | document.getElementById(" | + | document.getElementById(" |
- | | + | function myFunction(value) { |
- | text += "< | + | text += "< |
- | } | + | } |
</ | </ | ||
줄 319: | 줄 317: | ||
\\ | \\ | ||
<code javascript> | <code javascript> | ||
- | // let points = new Array(40, 100, 1, 5, 25, 10); | + | // |
- | let points = [40, 100, 1, 5, 25, 10]; | + | let points = new Array(40, 100, 1, 5, 25, 10); |
- | document.getElementById(" | + | let points = [40, 100, 1, 5, 25, 10]; |
- | console.log(points); | + | document.getElementById(" |
+ | console.log(points); | ||
</ | </ | ||
+ | \\ | ||
+ | '' | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | let points = new Array(40, 100); // Creates an array with two elements ( 40 and 100) | ||
+ | </ | ||
+ | \\ | ||
+ | 위의 요소 중에서 하나를 제거하면 아래와 같이 됩니다.\\ | ||
+ | <code javascript> | ||
+ | let points = new Array(40); | ||
+ | document.getElementById(" | ||
+ | // Creates an array with 40 undefined elements!!! | ||
+ | </ | ||
+ | |||
+ | =====How to Recognize an Array===== | ||
+ | 일반적인 질문: 변수가 배열인지 어떻게 알 수 있습니까? | ||
+ | \\ | ||
+ | 문제는 %%JavaScript%% 연산자 '' | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | let fruits = [" | ||
+ | document.getElementById(" | ||
+ | </ | ||
+ | \\ | ||
+ | %%typeof%% 연산자는 %%JavaScript%% 배열이 오브젝트이기 때문에 오브젝트를 반환합니다.\\ | ||
+ | \\ | ||
+ | |||
+ | ====Solution 1:==== | ||
+ | 이 문제를 해결하기 위해, %%ECMAScript 5%%는 새로운 메서드 '' | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | let fruits = [" | ||
+ | document.getElementById(" | ||
+ | </ | ||
+ | \\ | ||
+ | 이 솔루션의 문제점은 %%ECMAScript 5%%가 구번전의 브라우저에서 지원되지 않는다는 것입니다.\\ | ||
+ | \\ | ||
+ | |||
+ | ====Solution 2:==== | ||
+ | 이 문제를 해결하기 위해, 고유한 '' | ||
+ | <code javascript> | ||
+ | let fruits = [" | ||
+ | document.getElementById(" | ||
+ | |||
+ | function isArray(myArray) { | ||
+ | return myArray.constructor.toString().indexOf(" | ||
+ | } // true | ||
+ | </ | ||
+ | \\ | ||
+ | |||
+ | 위의 함수는 인수가 배열이면 항상 true를 반환합니다.\\ | ||
+ | \\ | ||
+ | 또는 더 정확하게는, | ||
+ | |||
+ | ====Solution 3:==== | ||
+ | '' | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | let fruits = [" | ||
+ | document.getElementById(" | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||