JavaScriptにおける同名パラメータ
ここで、外側の関数と内側の関数が 同名のパラメータを持つ場合を考えます:
function test(num) {
function func(num) {
console.log(num); // 1を出力
}
func(num);
};
test(1);
この場合、内側の関数内にはローカル変数
numが存在します。内側の関数でこれを変更しても、
外側の変数numにはまったく影響しません:
function test(num) {
function func(num) {
num = 2; // ローカル変数numを変更
}
func(num);
console.log(num); // 1を出力 - 何も変わっていない
}
test(1);
つまり、内側の関数は外側の変数numに
アクセスして変更することができません:
function test(num) {
function func(num) {
// ここでは外側の変数numにアクセスできない
}
func(num);
}
test(1);
コードを実行せずに、コンソールに何が出力されるか 判断してください:
function test(num) {
function func(num) {
console.log(num);
}
func(num);
}
test(1);
コードを実行せずに、コンソールに何が出力されるか 判断してください:
function test(num) {
function func(num) {
num = 2;
}
func(num);
console.log(num);
}
test(1);
コードを実行せずに、コンソールに何が出力されるか 判断してください:
function test(num) {
function func(num) {
console.log(num);
}
num = 2;
func(num);
}
test(1);
コードを実行せずに、コンソールに何が出力されるか 判断してください:
function test(num) {
function func(num) {
console.log(num);
}
func(num);
num = 2;
}
test(1);