JavaScriptの関数(一):参と形参
1431 ワード
JavaScriptの関数定義は、指定された型のものではなく、呼び出しも実際に行われていない任意のタイプの検査を行います.どれほど乱暴で自由なことか.
1オプションのイメージガイド
パラメータの個数が足りない場合は、
[Adress],1,2][name],“Adress”,“b”,“name”,“Adress”,“b”
説明: に相当する.実際の動作結果は、パラメータ であることを示している.
2参画
2.1可変実装(個数)
argmentsパラメータ配列
実際のパラメータが関数によって定義された参照数よりも大きい場合、多くのものは
caleeとcalerのプロパティ
ECMAScrip 5の厳格なモードでは、この2つの属性は利用できません.厳密でないモードでは、カレルは現在実行中の関数を表します.
1オプションのイメージガイド
パラメータの個数が足りない場合は、
/* optional */
を使用して任意のパラメータを定義することができる.イメージブックに入る時、基本的なタイプは伝値、その他は伝アドレスです.function getPropertyNames(o, /* optional */ a) {
a = a || []
a.push("Adress")
for(var i in o) {
a.push(o[i])
}
return a;
}
//
var a,b,c;
a = getPropertyNames([1,2]);
console.info(a);
var arr = ["name"]
b = getPropertyNames(["b"], arr);
console.info(b,arr);
実行結果:[Adress],1,2][name],“Adress”,“b”,“name”,“Adress”,“b”
説明:
a = a || []
は慣用的な使い方であり、a
を使用する前に、まず声明しなければならない.ここでa
は、モダリティとして、var a
a
が転送アドレス2参画
2.1可変実装(個数)
function max( /*...*/ ) {
var max = Number.NEGATIVE_INFINITY;
console.info(max);
for (var i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
console.info(max(10, 6, 80))
結果:80
2.2実装対象argmentsパラメータ配列
実際のパラメータが関数によって定義された参照数よりも大きい場合、多くのものは
arguments[i]
を使用して取得され、arguments
は参照対象を指す参照である(転送アドレス:arguments[i]
を変更しても、参加者は一緒に変更される).caleeとcalerのプロパティ
ECMAScrip 5の厳格なモードでは、この2つの属性は利用できません.厳密でないモードでは、カレルは現在実行中の関数を表します.