aboutsummaryrefslogtreecommitdiff
path: root/files/ru/orphaned/web/javascript
diff options
context:
space:
mode:
Diffstat (limited to 'files/ru/orphaned/web/javascript')
-rw-r--r--files/ru/orphaned/web/javascript/reference/errors/typed_array_invalid_arguments/index.html79
1 files changed, 79 insertions, 0 deletions
diff --git a/files/ru/orphaned/web/javascript/reference/errors/typed_array_invalid_arguments/index.html b/files/ru/orphaned/web/javascript/reference/errors/typed_array_invalid_arguments/index.html
new file mode 100644
index 0000000000..ab6bcf3748
--- /dev/null
+++ b/files/ru/orphaned/web/javascript/reference/errors/typed_array_invalid_arguments/index.html
@@ -0,0 +1,79 @@
+---
+title: 'TypeError: invalid arguments'
+slug: orphaned/Web/JavaScript/Reference/Errors/Typed_array_invalid_arguments
+tags:
+ - Error
+ - Errors
+ - JavaScript
+ - TypeError
+ - Ошибки
+translation_of: Web/JavaScript/Reference/Errors/Typed_array_invalid_arguments
+original_slug: Web/JavaScript/Reference/Errors/Typed_array_invalid_arguments
+---
+<div>{{jsSidebar("Errors")}}</div>
+
+<h2 id="Сообщение">Сообщение</h2>
+
+<pre class="syntaxbox">TypeError: invalid arguments (Firefox)</pre>
+
+<h2 id="Тип_ошибки">Тип ошибки</h2>
+
+<p>{{jsxref("TypeError")}}</p>
+
+<h2 id="Что_не_так">Что не так?</h2>
+
+<p>Конструкторы <a href="/ru/docs/Web/JavaScript/Typed_arrays">типизированных массивов</a> требуют либо</p>
+
+<ul>
+ <li>длину,</li>
+ <li>другой типизированный массив,</li>
+ <li>массивоподобные объекты,</li>
+ <li>итерируемые объекты либо</li>
+ <li>объект {{jsxref("ArrayBuffer")}}</li>
+</ul>
+
+<p>чтобы создать новый типизированный массив. Другие аргументы конструктора не создают допустимый типизированный массив.</p>
+
+<h2 id="Примеры">Примеры</h2>
+
+<p>Типизированные массивы, например {{jsxref("Uint8Array")}}, не могут быть построены из строки. На самом деле строки вообще не могут быть в типизированных массивах.</p>
+
+<pre class="brush: js example-bad">var ta = new Uint8Array("nope");
+// TypeError: invalid arguments
+</pre>
+
+<p>Различные способы создания допустимого {{jsxref("Uint8Array")}}:</p>
+
+<pre class="brush: js example-good"> // From a length
+var uint8 = new Uint8Array(2);
+uint8[0] = 42;
+console.log(uint8[0]); // 42
+console.log(uint8.length); // 2
+console.log(uint8.BYTES_PER_ELEMENT); // 1
+
+// From an array
+var arr = new Uint8Array([21,31]);
+console.log(arr[1]); // 31
+
+// From another TypedArray
+var x = new Uint8Array([21, 31]);
+var y = new Uint8Array(x);
+console.log(y[0]); // 21
+
+// From an ArrayBuffer
+var buffer = new ArrayBuffer(8);
+var z = new Uint8Array(buffer, 1, 4);
+
+// From an iterable
+var iterable = function*(){ yield* [1,2,3]; }();
+var uint8 = new Uint8Array(iterable);
+// Uint8Array[1, 2, 3]
+</pre>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<ul>
+ <li><a href="/ru/docs/Web/JavaScript/Typed_arrays">Типизированные массивы</a></li>
+ <li>{{jsxref("ArrayBuffer")}}</li>
+ <li>{{jsxref("Uint8Array")}}</li>
+</ul>