Baseline Widely available *
arguments
ê°ì²´ë í¨ìì ì ë¬ë ì¸ìì í´ë¹íë Array
ííì ê°ì²´ì
ëë¤.
ì°¸ê³ : ES6 í¸í ì½ë를 ìì± ì¤ì´ë¼ë©´ ëëë¡ ëë¨¸ì§ ë§¤ê°ë³ì 구문ì ì¬ì©í´ì¼ í©ëë¤.
ì°¸ê³ : "Array
íí"ë arguments
ê° length
ìì±ê³¼ ëë¶ì´ 0ë¶í° ì¸ë±ì¤ ë ë¤ë¥¸ ìì±ì ê°ì§ê³ ìì§ë§, Array
ì forEach
, map
ê³¼ ê°ì ë´ì¥ ë©ìë를 ê°ì§ê³ ìì§ ìë¤ë ë»ì
ëë¤.
function func1(a, b, c) {
console.log(arguments[0]);
// Expected output: 1
console.log(arguments[1]);
// Expected output: 2
console.log(arguments[2]);
// Expected output: 3
}
func1(1, 2, 3);
구문 ì¤ëª
arguments
ê°ì²´ë 모ë í¨ì ë´ìì ì´ì© ê°ë¥í ì§ì ë³ìì
ëë¤. arguments
ê°ì²´ë¥¼ ì¬ì©íì¬ í¨ì ë´ìì 모ë ì¸ì를 참조í ì ìì¼ë©°, í¸ì¶í ë ì ê³µí ì¸ì ê°ê°ì ëí í목ì ê°ê³ ììµëë¤. í목ì ì¸ë±ì¤ë 0ë¶í° ììí©ëë¤.
ì를 ë¤ì´, í¨ìê° ì¸ ê°ì ì¸ì를 ë°ì ê²½ì° ë¤ìê³¼ ê°ì´ ì ê·¼í ì ììµëë¤.
arguments[0];
arguments[1];
arguments[2];
ê° ì¸ì를 ì¤ì íê±°ë ì¬í ë¹í ìë ììµëë¤.
arguments[1] = "new value";
arguments
ê°ì²´ë Array
ê° ìëëë¤. Array
ì ë¹ì·íì§ë§, length
ë¹¼ê³ ë pop()
ê³¼ ê°ì ì´ë¤ Array
ìì±ë ììµëë¤. ê·¸ë¬ë ì¤ì Array
ë¡ ë³íí ì ììµëë¤:
var args = Array.prototype.slice.call(arguments);
var args = [].slice.call(arguments);
arguments
를 ì¤ì Array
ë¡ ë³íí기 ìí´ ES2015ì Array.from()
ë©ìë ëë ì ê° ì°ì°ì를 ì¬ì©í ìë ììµëë¤.
var args = Array.from(arguments);
var args = [...arguments];
ë¹ì ì´ íìì ë°ê¸°ë¡ ì ì¸ë ê²ë³´ë¤ ë§ì ì¸ìë¡ í¨ì를 í¸ì¶íë ê²½ì° arguments
ê°ì²´ë¥¼ ì¬ì©í ì ììµëë¤. ì´ ê¸°ë²ì ê°ë³ ì¸ìê° ì ë¬ë ì ìë í¨ìì ì ì©í©ëë¤. í¨ìì ì ë¬ë ì¸ìì ì를 ê²°ì í기 ìí´ arguments.length
를 ì°ì¸ì, ê·¸ ë¤ì arguments
ê°ì²´ë¥¼ ì¬ì©íì¬ ê° ì¸ì를 ì²ë¦¬íì¸ì. í¨ì signatureì 매ê°ë³ìì ì를 ê²°ì í기 ìí´ìë, Function.length
ìì±ì ì°ì¸ì.
arguments.callee
íì¬ ì¤í ì¤ì¸ í¨ì를 ê°ë¦¬íµëë¤.
arguments.caller
ì§ìì´ ì¤ë¨ëììµëë¤
íì¬ ì¤í ì¤ì¸ í¨ì를 í¸ì¶í í¨ì를 ê°ë¦¬íµëë¤.
arguments.length
í¨ìì ì ë¬ë ì¸ìì ì를 ê°ë¦¬íµëë¤.
arguments[@@iterator]
argumentsì ê° ì¸ë±ì¤ ê°ì í¬í¨íë ìë¡ì´ Array Iterator ê°ì²´ë¥¼ ë°íí©ëë¤.
ì´ ìë ì¬ë¬ 문ìì´ì ì°ê²°íë í¨ì를 ì ìí©ëë¤. í¨ìì ì ì¼í íì ì¸ìë ì°ê²°í í목ì 구ë¶íë 문ì를 ì§ì íë 문ìì´ì ëë¤. í¨ìë ë¤ìê³¼ ê°ì´ ì ìë©ëë¤:
function myConcat(separator) {
var args = Array.prototype.slice.call(arguments, 1);
return args.join(separator);
}
ì´ í¨ìì ì¸ì를 ì¼ë§ë ì§ ì ë¬í ì ìì¼ë©° 리ì¤í¸ ë´ í목ì²ë¼ ê° ì¸ì를 ì¬ì©íì¬ ë¦¬ì¤í¸ë¥¼ ë§ëëë¤.
// "red, orange, blue" ë°í
myConcat(", ", "red", "orange", "blue");
// "elephant; giraffe; lion; cheetah" ë°í
myConcat("; ", "elephant", "giraffe", "lion", "cheetah");
// "sage. basil. oregano. pepper. parsley" ë°í
myConcat(". ", "sage", "basil", "oregano", "pepper", "parsley");
HTML 리ì¤í¸ë¥¼ ë§ëë í¨ì ì ìí기
ì´ ìë 리ì¤í¸ HTMLì í¬í¨íë 문ìì´ì ë§ëë í¨ì를 ì ìí©ëë¤. í¨ìì ì ì¼í íì ì¸ìë 리ì¤í¸ê° ì ë ¬ëì§ ìì(bulluet(ê¸ ë¨¸ë¦¬ 기í¸)ê° ë¶ë) ê²½ì° "u
" ëë ì ë ¬ë(ë²í¸ê° 매겨ì§) ê²½ì° "o
"ì¸ ë¬¸ìì´ì
ëë¤. í¨ìë ë¤ìê³¼ ê°ì´ ì ìë©ëë¤:
function list(type) {
var result = "<" + type + "l><li>";
var args = Array.prototype.slice.call(arguments, 1);
result += args.join("</li><li>");
result += "</li></" + type + "l>"; // end list
return result;
}
ì´ í¨ìì ì¸ì를 ì¼ë§ë ì§ ì ë¬í ì ìê³ , íìë ì íì 리ì¤í¸ì í목ì¼ë¡ ê° ì¸ì를 ì¶ê°í©ëë¤. ì를 ë¤ë©´:
var listHTML = list("u", "One", "Two", "Three");
/* listHTMLì:
"<ul><li>One</li><li>Two</li><li>Three</li></ul>"
*/
ë머ì§, 기본 ë° ë¹êµ¬ì¡°íë 매ê°ë³ì
arguments
ê°ì²´ë ëë¨¸ì§ ë§¤ê°ë³ì, 기본 매ê°ë³ì ëë ë¹êµ¬ì¡°íë 매ê°ë³ìì í¨ê» ì¬ì©ë ì ììµëë¤.
function foo(...args) {
return arguments;
}
foo(1, 2, 3); // { "0": 1, "1": 2, "2": 3 }
ê·¸ë¬ë, ë¹ì격 í¨ìììë mapped arguments
ê°ì²´ë í¨ìê° ì´ë¤ ëë¨¸ì§ ë§¤ê°ë³ì, 기본 매ê°ë³ì ëë ë¹êµ¬ì¡°íë 매ê°ë³ìë í¬í¨íì§ ìë ê²½ì°ìë§ ì ê³µë©ëë¤. ì를 ë¤ì´, 기본 매ê°ë³ì를 ì¬ì©íë ë¤ì í¨ìììë, 100 ëì ì 10
ì´ ë°íë©ëë¤:
function bar(a = 1) {
arguments[0] = 100;
return a;
}
bar(10); // 10
ì´ ììì, ì´ë¤ ëë¨¸ì§ ë§¤ê°ë³ì, 기본 매ê°ë³ì ëë ë¹êµ¬ì¡°íë 매ê°ë³ìê° ìë ê²½ì°ìë, 100ì´ ë°íë©ëë¤:
function zoo(a) {
arguments[0] = 100;
return a;
}
zoo(10); // 100
ëª
ì¸ ë¸ë¼ì°ì í¸íì± ê°ì´ 보기
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4