recursal/MDN huggingface dataset:
String.prototype.toString()
===========================

**`toString()`** 메서드는 객체의 문자열 표현을 반환합니다.

시도해보기
-----

구문
--


```js
toString();
```

### 반환 값

메서드를 호출하는 객체의 문자열 표현.

설명
--

`String` 객체는 `Object` 객체의 `toString()` 메서드를 상속하지 않고 재정의합니다. `String` 의 `toString()` 메서드는 객체의 문자열 표현을 반환하며 `String.prototype.valueOf()` 메서드와 동일합니다.

예제
--

### `toString()` 사용하기

`String` 객체의 문자열 값을 표시하는 예제입니다.


```js
var x = new String("Hello world");

console.log(x.toString()); // logs 'Hello world'
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-string.prototype.tostring |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `String.prototype.valueOf()`
Uint8Array() constructor
========================

**`Uint8Array()`** 생성자는 8비트 부호없는 정수의 형식화 배열(TypedArray)을 생성합니다. 배열의 내용은 0으로
 초기화됩니다. 배열이 생성되면 객체의 메서드를 사용하거나 표준 배열 인덱스 구문(즉, 대괄호 표기법 사용)을 사용하여 배열의 요소를 참조할 수
 있습니다.

문법
--


```js
new Uint8Array()
new Uint8Array(length)
new Uint8Array(typedArray)
new Uint8Array(object)

new Uint8Array(buffer)
new Uint8Array(buffer, byteOffset)
new Uint8Array(buffer, byteOffset, length)
```


**참고:** `Uint8Array()`는 오직 `new`로만 생성할 수 있습니다. `new` 없이 호출을 시도하면 `TypeError` 예외가 발생합니다

### 매개변수

`TypedArray`를 참고하세요.

### 예외

`TypedArray`를 참고하세요.

예제
--

### Uint8Array을 생성하기 위한 각기 다른 여러 방법


```js
// 길이로부터 생성
const uint8 = new Uint8Array(2);
uint8[0] = 42;
console.log(uint8[0]); // 42
console.log(uint8.length); // 2
console.log(uint8.BYTES\_PER\_ELEMENT); // 1

// 배열로부터
const x = new Uint8Array([21, 31]);
console.log(x[1]); // 31

// 다른 TypedArray로부터
const y = new Uint8Array(x);
console.log(y[0]); // 21

// ArrayBuffer로부터
const buffer = new ArrayBuffer(8);
const z = new Uint8Array(buffer, 1, 4);
console.log(z.byteOffset); // 1

// 순회로부터
const iterable = (function\* () {
  yield\* [1, 2, 3];
})();
const uint8FromIterable = new Uint8Array(iterable);
console.log(uint8FromIterable);
// Uint8Array [1, 2, 3]
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-typedarray-constructors |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `core-js`에서 `Uint8Array` 폴리필
* JavaScript 형식화 배열
* `ArrayBuffer`
* `DataView`
TypedArray.prototype.set()
==========================

**`set()`** 메서드는 지정된 배열로부터 입력 값을 읽어 형식화 배열 내에 여러 값을 저장합니다.

시도해보기
-----

구문
--


```js
typedarr.set(array[, offset])
typedarr.set(typedarray[, offset])
```

### 매개변수

`array`

값을 복사할 배열. 소스 배열로부터 모든 값이 대상 배열로 복사됩니다, 소스 배열의 길이 + 오프셋이 대상 배열의 길이를 초과하지 않는 한, 그 경우에는 예외가 발생됩니다.

`typedarray`

소스 배열이 형식화 배열인 경우, 두 배열은 기본 `ArrayBuffer`를 같이 공유할 수 있습니다; 브라우저는 버퍼의 소스 범위를 대상(destination) 범위로 똑똑하게 **복사**합니다.

`offset` Optional

소스 `array`에서 값을 쓰기 시작하는 대상 배열의 오프셋. 이 값이 생략된 경우, 0으로 간주됩니다 (즉, 소스 `array`는 인덱스 0에서 시작하는 대상 배열 내 값을 덮어씁니다).

### 예외

`RangeError`

`offset`이 가령 형식화 배열의 끝을 넘어서 저장하려고 설정된 경우 발생.

예제
--

### `set()` 사용하기


```js
var buffer = new ArrayBuffer(8);
var uint8 = new Uint8Array(buffer);

uint8.set([1, 2, 3], 3);

console.log(uint8); // Uint8Array [ 0, 0, 0, 1, 2, 3, 0, 0 ]
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.set |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* JavaScript 형식화 배열
* `TypedArray`
* `ArrayBuffer`
TypedArray.prototype.entries()
==============================

**`entries()`** 메서드는 해당 배열의 각 인덱스에 대한 키/값 쌍을 포함하는 새로운 `배열` 반복자 객체를 반환합니다.

시도해보기
-----

구문
--


```js
entries()
```

### 반환 값

새로운 배열 반복자 객체.

예제
--

### for...of 루프를 사용하여 반복하기


```js
const array = new Uint8Array([10, 20, 30, 40, 50]);
const arrayEntries = arr.entries();
for (const element of arrayEntries) {
  console.log(element);
}
```

### 다른 반복 방법


```js
const array = new Uint8Array([10, 20, 30, 40, 50]);
const arrayEntries = arr.entries();

console.log(arrayEntries.next().value); // [0, 10]
console.log(arrayEntries.next().value); // [1, 20]
console.log(arrayEntries.next().value); // [2, 30]
console.log(arrayEntries.next().value); // [3, 40]
console.log(arrayEntries.next().value); // [4, 50]
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.entries |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* Polyfill of `TypedArray.prototype.entries` in `core-js`
* JavaScript 형식화 배열
* `TypedArray`
* `TypedArray.prototype.keys()`
* `TypedArray.prototype.values()`
* `TypedArray.prototype[@@iterator]()`
TypedArray.prototype.buffer
===========================

**`buffer`** 접근자 속성은 생성 시 *TypedArray*에서 참조하는 `ArrayBuffer`를 나타냅니다.

시도해보기
-----

설명
--

`buffer` 속성은 set 접근자 함수가 `undefined`인 속성으로, 이 속성은 읽을수만 있습니다. 값은 *TypedArray*가 생성될 때 설정되어 변경할 수 없습니다. *TypedArray*는 TypedArray 객체 중 하나입니다.

예제
--

### buffer 속성 사용하기


```js
const buffer = new ArrayBuffer(8);
const uint16 = new Uint16Array(buffer);
uint16.buffer; // ArrayBuffer { byteLength: 8 }
```

### 잘린 배열 보기에서 기반 버퍼에 액세스하기


```js
const buffer = new ArrayBuffer(1024);
const arr = new Uint8Array(buffer, 64, 128);
console.log(arr.byteLength); // 128
console.log(arr.buffer.byteLength); // 1024
console.log(arr.buffer === buffer); // true
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-get-%typedarray%.prototype.buffer |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* JavaScript 형식화 배열
* `TypedArray`
TypedArray.prototype.sort()
===========================

**`sort()`** 메서드는 *적소에* 형식화 배열의 요소를 정렬하여 그 형식화 배열을 반환합니다. 이 메서드는 `Array.prototype.sort()`*와 같은 알고리즘입니다.* *TypedArray*는 여기 형식화 배열 유형 중 하나입니다.

구문
--


```js
typedarray.sort([compareFunction]);
```

### 매개변수

`compareFunction` Optional

정렬 순서를 정의하는 함수를 지정합니다.

예
-

더 많은 예는, `Array.prototype.sort()` 메서드도 참조하세요.


```js
var number = new Uint8Array([40, 1, 5, 200]);

function compareNumbers(a, b) {
  return a - b;
}

numbers.sort(compareNumbers);
// Uint8Array [ 1, 5, 40, 200 ]
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.sort |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

참조
--

* `Array.prototype.sort()`
TypedArray.prototype.byteOffset
===============================

**`byteOffset`** 접근자(accessor) 속성(property)은 그 `ArrayBuffer`의 시작점에서 형식화 배열의 오프셋(단위 바이트)을 나타냅니다.

구문
--


```js
typedarray.byteOffset;
```

설명
--

`byteOffset` 속성은 set 접근자 함수가 `undefined`인 접근자 속성입니다, 이 속성을 읽을 수만 있음을 뜻하는. 그 값은 *TypedArray*가 만들어질 때 수립되어 변경될 수 없습니다. *TypedArray*는 TypedArray 객체 유형 중 하나입니다.

예
-

### `byteOffset` 속성 사용


```js
var buffer = new ArrayBuffer(8);

var uint8 = new Uint8Array(buffer);
uint8.byteOffset; // 0 (지정된 오프셋이 없음)

var uint8 = new Uint8Array(buffer, 3);
uint8.byteOffset; // 3 (Uint8Array를 만들 때 지정된 대로)
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-get-%typedarray%.prototype.byteoffset |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* JavaScript 형식화 배열
* `TypedArray`
TypedArray.prototype.every()
============================

**`every()`** 메서드는 배열 안의 모든 요소가 주어진 판별 함수를 통과하는지 테스트합니다.
 이 메서드는 `Array.prototype.every()`와 같은 알고리즘을 가지고 있습니다.
 TypedArray은 형식화 배열 타입 중 하나입니다.

시도해보기
-----

구문
--


```js
// Arrow function
every((element) => { /\* ... \*/ } )
every((element, index) => { /\* ... \*/ } )
every((element, index, array) => { /\* ... \*/ } )

// Callback function
every(callbackFn)
every(callbackFn, thisArg)

// Inline callback function
every(function(element) { /\* ... \*/ })
every(function(element, index) { /\* ... \*/ })
every(function(element, index, array){ /\* ... \*/ })
every(function(element, index, array) { /\* ... \*/ }, thisArg)
```

### 매개변수

`callbackFn`

각 요소를 시험할 함수.

다음 세 가지 인수를 받습니다.

`element`

배열에서 처리되는 현재 요소.

`index`

이 형식화 배열에서 처리할 현재 요소의 인덱스.

`array`

`every`를 호출한 형식화 배열.


`thisArg` Optional

`callbackFn`을 실행할 때 `this`로 사용하는 값.

### 반환 값

 콜백 함수가 모든 배열 요소가 참 같은 값을 반환하면 `true`를 반환하며,
 그렇지 않으면 `false`를 반환합니다.

설명
--

`every`는 `callbackFn`이 falsy을 반환하는 요소를 찾을 때까지 형식화 배열에 있는
 각 요소에 대해 한 번씩 `callbackFn` 함수를 실행합니다. 해당하는 요소를 발견한 경우 `every`는 즉시 `false`를
 반환합니다. 그렇지 않으면, 즉 모든 값에서 truthy을 반환하면 `true`를 반환합니다.

`callbackFn`은 요소의 값, 해당 요소의 인덱스 및 순회하고 있는 형식화 배열 세 가지 인수와 함께 호출됩니다.

`thisArg` 매개변수를 `every`에 제공한 경우 `callbackFn`의 `this`로 사용됩니다.
 그 외엔 `undefined`값을 사용합니다. 최종적으로 `callbackFn`이 볼 수 있는 `this`의 값은
 함수의 `this`를 결정하는 일반적인 규칙을 따릅니다.

`every`는 호출한 배열을 변형하지 않습니다.

예제
--

### 형식화 배열의 모든 요소의 크기 테스트

다음 예는 형식화 배열의 모든 요소가 9보다 더 큰지 테스트합니다.


```js
function isBigEnough(element, index, array) {
  return element >= 10;
}
new Uint8Array([12, 5, 8, 130, 44]).every(isBigEnough); // false
new Uint8Array([12, 54, 18, 130, 44]).every(isBigEnough); // true
```

### 화살표 함수를 사용한 형식화 배열 테스트

화살표 함수는
 테스트 함수를 위해 더 짧은 구문을 제공합니다.


```js
new Uint8Array([12, 5, 8, 130, 44]).every((elem) => elem >= 10); // false
new Uint8Array([12, 54, 18, 130, 44]).every((elem) => elem >= 10); // true
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.every |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* Polyfill of `TypedArray.prototype.every` in `core-js`
* `TypedArray.prototype.some()`
* `Array.prototype.every()`
TypedArray.BYTES\_PER\_ELEMENT
==============================

**`TypedArray.BYTES_PER_ELEMENT`** 속성은 각 형식화 배열 요소의 바이트 크기입니다.

시도해보기
-----

값
-

`TypedArray`의 타입에 따라 값이 달라지는 숫자입니다.

| Property attributes of `TypedArray.BYTES_PER_ELEMENT` |
| --- |
| Writable | 불가능 |
| Enumerable | 불가능 |
| Configurable | 불가능 |

설명
--

`TypedArray` 객체는 요소 당 바이트 수 및 바이트가 해석되는 방법이 서로 다릅니다.
 `BYTES_PER_ELEMENT` 상수는 주어진 `TypedArray`의 각 요소가 갖는 바이트 수를 포함합니다.

`BYTES_PER_ELEMENT` 속성은 인스턴스 속성이자 정적 속성입니다.
 해당 속성은 `TypedArray` 하위 클래스의 생성자와 해당 생성자의 인스턴스 모두에서 사용 가능합니다.

인스턴스 속성으로 `BYTES_PER_ELEMENT`는 생성자의 `prototype`에 정의됩니다.


```js
console.log(Object.hasOwn(Int8Array.prototype, "BYTES\_PER\_ELEMENT")); // true
```

예제
--

### BYTES\_PER\_ELEMENT 사용하기

정적 속성으로 사용하기


```js
Int8Array.BYTES\_PER\_ELEMENT; // 1
Uint8Array.BYTES\_PER\_ELEMENT; // 1
Uint8ClampedArray.BYTES\_PER\_ELEMENT; // 1
Int16Array.BYTES\_PER\_ELEMENT; // 2
Uint16Array.BYTES\_PER\_ELEMENT; // 2
Int32Array.BYTES\_PER\_ELEMENT; // 4
Uint32Array.BYTES\_PER\_ELEMENT; // 4
Float32Array.BYTES\_PER\_ELEMENT; // 4
Float64Array.BYTES\_PER\_ELEMENT; // 8
BigInt64Array.BYTES\_PER\_ELEMENT; // 8
BigUint64Array.BYTES\_PER\_ELEMENT; // 8
```


인스턴스 속성으로 사용하기


```js
new Int8Array([]).BYTES\_PER\_ELEMENT; // 1
new Uint8Array([]).BYTES\_PER\_ELEMENT; // 1
new Uint8ClampedArray([]).BYTES\_PER\_ELEMENT; // 1
new Int16Array([]).BYTES\_PER\_ELEMENT; // 2
new Uint16Array([]).BYTES\_PER\_ELEMENT; // 2
new Int32Array([]).BYTES\_PER\_ELEMENT; // 4
new Uint32Array([]).BYTES\_PER\_ELEMENT; // 4
new Float32Array([]).BYTES\_PER\_ELEMENT; // 4
new Float64Array([]).BYTES\_PER\_ELEMENT; // 8
new BigInt64Array([]).BYTES\_PER\_ELEMENT; // 8
new BigUint64Array([]).BYTES\_PER\_ELEMENT; // 8
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-typedarray.bytes\_per\_element |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* JavaScript 형식화 배열
* `TypedArray`
TypedArray.prototype.reverse()
==============================

**`reverse()`** 메서드는 제자리에서 형식화 배열을 뒤집습니다. 형식화 배열 첫 요소는 마지막이 되고 마지막은 첫 요소가 됩니다. 이 메서드는 `Array.prototype.reverse()`와 같은 알고리즘입니다. *TypedArray*는 여기 TypedArray 객체 유형 중 하나입니다.

시도해보기
-----

구문
--


```js
typedarray.reverse();
```

### 반환 값

뒤집힌 배열.

예제
--


```js
var uint8 = new Uint8Array([1, 2, 3]);
uint8.reverse();

console.log(uint8); // Uint8Array [3, 2, 1]
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.reverse |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `Array.prototype.reverse()`
get TypedArray[@@species]
=========================

**`TypedArray[@@species]`** 접근자 속성은 형식화 배열의 생성자를 반환합니다.

설명
--

`species` 접근자 속성은 형식화 배열 객체에 대한 기본 생성자를 반환합니다. 하위 클래스 생성자는 이를 재정의하여 생성자의 할당 값을 변경할 수 있습니다.

예제
--

### 일반 객체의 species

`species` 속성은 지정된 형식화 배열 객체에 대한 형식화 배열 생성자 중 하나인 기본 생성자 함수를 반환합니다.


```js
Int8Array[Symbol.species]; // function Int8Array()
Uint8Array[Symbol.species]; // function Uint8Array()
Float32Array[Symbol.species]; // function Float32Array()
```

### 파생 객체의 species

파생 컬렉션 객체(예: 사용자 지정 형식 배열 `MyTypedArray`)에서 `MyTypedArray`의 species는 `MyTypedArray` 생성자입니다. 그러나 파생 클래스 메서드에서 부모의 형식화 배열 객체를 반환하기 위해 이를 덮어쓸 수 있습니다.


```js
class MyTypedArray extends Uint8Array {
  // Overwrite MyTypedArray species to the parent Uint8Array constructor
  static get [Symbol.species]() {
    return Uint8Array;
  }
}
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-get-%typedarray%-@@species |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `TypedArray`
* `Symbol.species` (en-US)
TypedArray.prototype[@@iterator]()
==================================

@@iterator 속성의 초기값은 `values` 속성의 초기값과 같은 함수 객체입니다.

구문
--


```js
arr[Symbol.iterator]();
```

예
-

### `for...of` 루프를 사용하는 반복


```js
var arr = new Uint8Array([10, 20, 30, 40, 50]);
// 브라우저가 for..of 루프 및 for 루프에서
// let 스코프인 변수를 지원해야 합니다
for (let n of arr) {
  console.log(n);
}
```

### 대안 반복


```js
var arr = new Uint8Array([10, 20, 30, 40, 50]);
var eArr = arr[Symbol.iterator]();
console.log(eArr.next().value); // 10
console.log(eArr.next().value); // 20
console.log(eArr.next().value); // 30
console.log(eArr.next().value); // 40
console.log(eArr.next().value); // 50
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype-@@iterator |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

참조
--

* JavaScript 형식화 배열
* `TypedArray`
* `TypedArray.prototype.entries()`
* `TypedArray.prototype.keys()`
* `TypedArray.prototype.values()`
TypedArray.prototype.slice()
============================

**`slice()`** 메서드는 형식화 배열의 일부를 얕게 복사(shallow copy)한 새로운 형식화 배열 객체를 반환합니다. 이 메서드는 `Array.prototype.slice()`와 같은 알고리즘입니다. *TypedArray*는 여기 TypedArray 객체 유형 중 하나입니다.

구문
--


```js
typedarray.slice([begin[, end]])
```

매개변수
----

* `begin` Optional
    + 추출을 시작하는 인덱스(0부터 셈).
     음수 인덱스일 때, `begin`은 열 끝으로부터 오프셋을 나타냅니다. `slice(-2)`는 열에서 마지막 두 요소를 추출합니다.`begin`이 생략된 경우, `slice`는 인덱스 `0`에서 시작합니다.
* `end` Optional
    + 추출을 끝내는 인덱스(0부터 셈). `slice`는 `end`(를 포함하지 않음)까지만 추출합니다.
     `slice(1,4)`는 2번째부터 4번째 요소까지 추출합니다 (인덱스가 1, 2 및 3인 요소).
     음수 인덱스일 때, `end`는 열 끝으로부터 오프셋을 나타냅니다. `slice(2,-1)`은 열의 3번째부터 끝에서 2번째 요소까지 추출합니다.
     `end`가 생략된 경우, `slice`는 열의 끝까지 추출합니다 (`arr.length`).
설명
--

`slice` 메서드는 바꾸지 않습니다. 원래 형식화 배열에서 얕게 복사된 요소를 반환합니다.

새 요소가 어느 형식화 배열에든 추가된 경우, 다른 형식화 배열은 영향을 받지 않습니다.

예
-

### 기존 형식화 배열의 일부를 반환


```js
var uint8 = new Uint8Array([1, 2, 3]);
uint8.slice(1); // Uint8Array [ 2, 3 ]
uint8.slice(2); // Uint8Array [ 3 ]
uint8.slice(-2); // Uint8Array [ 2, 3 ]
uint8.slice(0, 1); // Uint8Array [ 1 ]
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.slice |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

참조
--

* `Array.prototype.slice()`
TypedArray.prototype.join()
===========================

**`join()`** 메서드는 어떤 형식화 배열의 모든 요소를 하나의 문자열로 연결합니다. 이 메서드는
 `Array.prototype.join()`와 같은 알고리즘을 가지고 있습니다. 형식화 배열(TypedArray)는
 형식화 배열의 타입 중 하나입니다.

시도해보기
-----

구문
--


```js
join()
join(separator)
```

### 매개변수

`separator` Optional

 배열의 각 요소를 구분할 문자열을 지정합니다. 이 `separator`는 필요한 경우 문자열로 변환됩니다.
 생략하면 배열의 요소들이 쉼표(",")로 구분됩니다.


### 반환 값

모든 배열 요소를 연결한 문자열.

예제
--

### join() 사용하기


```js
const uint8 = new Uint8Array([1, 2, 3]);
uint8.join(); // '1,2,3'
uint8.join(" / "); // '1 / 2 / 3'
uint8.join(""); // '123'
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.join |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* Polyfill of `TypedArray.prototype.join` in `core-js`
* `TypedArray`
* `Array.prototype.join()`
TypedArray.prototype.fill()
===========================

**`fill()`** 메서드는 배열의 모든 요소를 지정한 시작 인덱스부터 종료 인덱스까지 정적인 값으로 채웁니다. `fill()`은 `Array.prototype.fill()`과 동일한 알고리즘을 가지고 있습니다. TypedArray 는 typed array types 이곳에 있는 것 중 하나 입니다.

시도해보기
-----

구문
--


```js
typedarray.fill(value[, start = 0[, end = this.length]])
```

### 매개변수

`value`

배열에 채워넣을 값.

`start`

선택사항. 시작 위치. 기본값은 0.

`end`

선택사항. 종료 위치 (종료위치를 포함하지않습니다. 즉, end -1 까지만 해당됩니다.). 기본값 this.length(배열의 길이).

설명
--

start 와 end 사이에 요소들을 채웁니다.

**`fill`** 메소드는 value, start 그리고 and 3개의 매개변수를 요구합니다. start 와 end 매개변수는 선택사항이며 기본값은 0 과 지정한 배열객체의 길이값 입니다.

만약 start 매개변수가 음수이면, start 의 값은 배열의 길이값을 합한 결과가 시작지점이 되고, 만약 end 가 음수라면, end 매개변수와 배열의 길이값을 합한 결과가 종료지점이 됩니다.

예제
--


```js
new Uint8Array([1, 2, 3]).fill(4); // Uint8Array [4, 4, 4]
new Uint8Array([1, 2, 3]).fill(4, 1); // Uint8Array [1, 4, 4]
new Uint8Array([1, 2, 3]).fill(4, 1, 2); // Uint8Array [1, 4, 3]
new Uint8Array([1, 2, 3]).fill(4, 1, 1); // Uint8Array [1, 2, 3]
new Uint8Array([1, 2, 3]).fill(4, -3, -2); // Uint8Array [4, 2, 3]
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.fill |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `Array.prototype.fill()`
TypedArray.prototype.subarray()
===============================

**`subarray()`** 메서드는 이 TypedArray 객체와 동일한 `ArrayBuffer` 저장소에 동일한 요소의 타입을 가진 새로운 TypedArray를 반환합니다. 시작 오프셋은 **포함**하고 마지막 오프셋은 **제외**합니다. TypedArray는 타입이 지정된 배열 유형 중 하나입니다.

시도해보기
-----

구문
--


```js
subarray()
subarray(begin)
subarray(begin, end)
```

### 매개변수

`begin` Optional

시작할 요소입니다. 오프셋 값은 포함되어 있습니다. 이 값을 명시하지 않으면 배열 전체가 새로운 뷰에 포함됩니다.

`end` Optional

 마지막 요소입니다. 오프셋 값은 제외합니다. 이 값을 명시하지 않으면 `begin`에 지정된 요소부터 배열 끝까지
 모든 요소가 새로운 뷰에 포함됩니다.


### 반환 값

새로운 `TypedArray` 객체.

설명
--

`begin`과 `end`으로 명시된 범위는 현재 배열의 유효한 인덱스 범위로 고정됩니다. 새 배열의 계산된 길이가 음수인 경우
 0으로 고정됩니다. `begin` 또는 `end`가 음수인 경우 배열의 시작이 아닌 끝의 인덱스를 참조합니다.

 또한 명심하셔야 할 점은 기존 버퍼에 새로운 뷰(view)를 생성하는 것뿐입니다.
 새 객체의 내용을 변경하면 원래 객체에 영향을 미치며 그 반대의 경우도 마찬가지입니다.

예제
--

### subarray() 메서드 사용하기


```js
const buffer = new ArrayBuffer(8);
const uint8 = new Uint8Array(buffer);
uint8.set([1, 2, 3]);

console.log(uint8); // Uint8Array [ 1, 2, 3, 0, 0, 0, 0, 0 ]

const sub = uint8.subarray(0, 4);

console.log(sub); // Uint8Array [ 1, 2, 3, 0 ]
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.subarray |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* Polyfill of `TypedArray.prototype.subarray` in `core-js`
* JavaScript 형식화 배열
* `TypedArray`
* `ArrayBuffer`
TypedArray.prototype.values()
=============================

**`values()`** 메서드는 배열 내 각 인덱스에 대한 값을 포함하는 새로운 배열 반복자 객체를 반환합니다.

시도해보기
-----

구문
--


```js
values()
```

예제
--

### for...of 루프를 사용한 반복


```js
const arr = new Uint8Array([10, 20, 30, 40, 50]);
const values = arr.values();
for (const n of values) {
  console.log(n);
}
```

### 다른 반복 방법


```js
const arr = new Uint8Array([10, 20, 30, 40, 50]);
const values = arr.values();
console.log(values.next().value); // 10
console.log(values.next().value); // 20
console.log(values.next().value); // 30
console.log(values.next().value); // 40
console.log(values.next().value); // 50
```

명세서
---

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.values |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* Polyfill of `TypedArray.prototype.values` in `core-js`
* JavaScript 형식화 배열
* `TypedArray`
* `TypedArray.prototype.entries()`
* `TypedArray.prototype.keys()`
* `TypedArray.prototype[@@iterator]()`
TypedArray.prototype.some()
===========================

**`some()`** 메서드는 형식화 배열 내 일부 요소가 제공되는 함수에 의해 구현되는 테스트를 통과하는지 여부를 테스트합니다. 이 메서드는 `Array.prototype.some()`과 같은 알고리즘입니다. *TypedArray*는 여기 TypedArray 객체 유형 중 하나입니다.

시도해보기
-----

구문
--


```js
typedarray.some(callback[, thisArg])
```

### 매개변수

`callback`

 각 요소에 대해 테스트하는 함수, 다음 인수 셋을 취하는:\_ `currentValue`
 \_ : 형식화 배열에서 현재 처리 중인 요소.


`index`

형식화 배열에서 현재 처리 중인 요소의 인덱스.

`array`

`some`이 호출한 형식화 배열.


`thisArg`

선택 사항. `callback`을 실행할 때 `this`로서 사용하는 값.

설명
--

`some` 메서드는 `callback`이 true 값을 반환하는 요소를 찾을 때까지 형식화 배열에 있는 각 요소에 대해 한 번 `callback` 함수를 실행합니다. 그런 요소가 발견된 경우, `some`은 즉시 `true`를 반환합니다. 그렇지 않으면, `some`은 `false`를 반환합니다.

`callback`은 세 인수와 함께 호출됩니다: 요소값, 요소 인덱스 및 순회(traverse)되는 배열 객체.

`thisArg` 매개변수가 `some`에 제공되는 경우, 호출될 때 `callback`에 전달됩니다, 그 `this` 값으로 사용하기 위해. 그렇지 않으면, `undefined` 값이 그 `this` 값으로 사용하기 위해 전달됩니다. `callback`에 의해 결국 관찰할 수 있는 `this` 값은 함수에 의해 보이는 `this`를 결정하는 평소 규칙에 따라 결정됩니다.

`some`은 호출된 형식화 배열을 변화시키지(mutate) 않습니다.

예제
--

### 모든 형식화 배열 요소의 크기 테스트

다음 예는 형식화 배열의 모든 요소가 10보다 더 큰지 테스트합니다.


```js
function isBiggerThan10(element, index, array) {
  return element > 10;
}
new Uint8Array([2, 5, 8, 1, 4]).some(isBiggerThan10); // false
new Uint8Array([12, 5, 8, 1, 4]).some(isBiggerThan10); // true
```

### 화살표 함수를 사용하여 형식화 배열 요소 테스트

화살표 함수는 같은 테스트에 대해 더 짧은 구문을 제공합니다.


```js
new Uint8Array([2, 5, 8, 1, 4]).some((elem) => elem > 10); // false
new Uint8Array([12, 5, 8, 1, 4]).some((elem) => elem > 10); // true
```

명세
--

| Specification |
| --- |
| ECMAScript Language Specification # sec-%typedarray%.prototype.some |

브라우저 호환성
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

같이 보기
-----

* `TypedArray.prototype.every()`
* `Array.prototype.some()`