arguments[Symbol.iterator]()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2016å¹´7æ.
[Symbol.iterator]() 㯠arguments ãªãã¸ã§ã¯ãã®ã¡ã½ããã§ãã¤ãã¬ã¼ã¿ã¼ãããã³ã«ãå®è£
ãã arguments ãªãã¸ã§ã¯ããåè¦å¯è½ãæå¾
ããã»ã¨ãã©ã®æ§æï¼ã¹ãã¬ããæ§æã for...of ã«ã¼ããªã©ï¼ã§å©ç¨ã§ããããã«ããããã®ãã®ã§ããããã¯ã arguments ãªãã¸ã§ã¯ãã®ããããã®ã¤ã³ããã¯ã¹ã®å¤ãè¿ã é
åã¤ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ã ãè¿ãã¾ãã
ãã®ããããã£ã®åæå¤ã¯ã Array.prototype.values ããããã£ã®åæå¤ã¨åã颿°ãªãã¸ã§ã¯ãã§ãï¼ã¾ããArray.prototype[Symbol.iterator]() ã¨ãåãã§ãï¼ã
æ§æ
arguments[Symbol.iterator]()
弿°
ãªãã
è¿å¤
Array.prototype.values() ã¨åãè¿å¤ã§ãã arguments ãªãã¸ã§ã¯ãã®ããããã®ã¤ã³ããã¯ã¹ã®å¤ãè¿ãæ°ããå復å¯è½ã¤ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ãã§ãã
ä¾
>for...of ã«ã¼ããç¨ããå復å¦ç
ãã®ã¡ã½ãããç´æ¥å¼ã³åºãå¿
è¦ã¯ã»ã¨ãã©ãªããã¨ã«æ³¨æãã¦ãã ããã[Symbol.iterator]() ã¡ã½ãããåå¨ããã®ã§ã arguments ãªãã¸ã§ã¯ãã¯å復å¯è½ãªãã¸ã§ã¯ãã§ãããfor...of ã«ã¼ããªã©ã®åæ§ã«å復å¯è½ãªæ§æã¯èªåçã«ãã®ã¡ã½ãããå¼ã³åºããã«ã¼ãå¦çç¨ã®ã¤ãã¬ã¼ã¿ã¼ãåå¾ãã¾ãã
function f() {
for (const letter of arguments) {
console.log(letter);
}
}
f("w", "y", "k", "o", "p");
ã¤ãã¬ã¼ã¿ã¼ãæåã§æç¹°ã
è¿ãããã¤ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ãã® next() ã¡ã½ãããæåã§å¼ã³åºããã¨ã§ãå復å¦çãæå¤§éã«å¶å¾¡ãããã¨ãã§ãã¾ãã
function f() {
const argsIter = arguments[Symbol.iterator]();
console.log(argsIter.next().value); // w
console.log(argsIter.next().value); // y
console.log(argsIter.next().value); // k
console.log(argsIter.next().value); // o
console.log(argsIter.next().value); // p
}
f("w", "y", "k", "o", "p");
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-createunmappedargumentsobject> |
| ECMAScript® 2027 Language Specification> # sec-createmappedargumentsobject> |