TypedArray.prototype.copyWithin()
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2016å¹´9æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
copyWithin() 㯠TypedArray ã¤ã³ã¹ã¿ã³ã¹ã®ã¡ã½ããã§ããã®åä»ãé
åã®ä¸é¨ãåãåä»ãé
åã®å¥ã®å ´æã«ã·ã£ãã¼ã³ãã¼ãããã®åä»ãé
åã®é·ãã夿´ããã«è¿ãã¾ãããã®ã¡ã½ãã㯠Array.prototype.copyWithin() ã¨åãã¢ã«ã´ãªãºã ã§ãã
試ãã¦ã¿ã¾ããã
const uint8 = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]);
// æ¿å
¥ä½ç½®ãéå§ä½ç½®ãçµäºä½ç½®
uint8.copyWithin(3, 1, 3);
console.log(uint8);
// äºæ³ãããçµæ: Uint8Array [1, 2, 3, 2, 3, 6, 7, 8]
æ§æ
copyWithin(target, start)
copyWithin(target, start, end)
弿°
target-
並ã³ã®ã³ãã¼å ã¨ãªãã¼ãåºç¹ã®ã¤ã³ããã¯ã¹ã§ãæ´æ°ã«å¤æããã¾ããããã¯
startã«ããè¦ç´ ãã³ãã¼ãããå ´æã«å¯¾å¿ããstartããendã¾ã§ã®ãã¹ã¦ã®è¦ç´ ãå¾ç¶ã®ã¤ã³ããã¯ã¹ã«ã³ãã¼ããã¾ãã start-
ã³ãã¼å ã§ã³ãã¼ãå§ããä½ç½®ã®ã¼ãåºç¹ã®ã¤ã³ããã¯ã¹ã§ãæ´æ°ã«å¤æããã¾ãã
endçç¥å¯-
ã³ãã¼å ã§ã³ãã¼ãçµããä½ç½®ã®ã¼ãåºç¹ã®ã¤ã³ããã¯ã¹ã§ãæ´æ°ã«å¤æããã¾ãã
copyWithin()ã¯ããã¾ã§ãã³ãã¼ãã¾ãããendã¯å«ã¿ã¾ããã
è¿å¤
夿´ãããåä»ãé åã§ãã
解説
詳細ã«ã¤ãã¦ã¯ã Array.prototype.copyWithin() ãã覧ãã ããããã®ã¡ã½ããã¯æ±ç¨çã§ã¯ãªããåä»ãé
åã¤ã³ã¹ã¿ã³ã¹ã«å¯¾ãã¦ã®ã¿å¼ã³åºããã¨ãã§ãã¾ãã
ä¾
>copyWithin() ã®ä½¿ç¨
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 ]
uint8.copyWithin(3, 0, 3);
console.log(uint8); // Uint8Array [ 1, 2, 3, 1, 2, 3, 0, 0 ]
仿§æ¸
| 仿§æ¸ |
|---|
| ECMAScript® 2027 Language Specification > # sec-%typedarray%.prototype.copywithin > |