#JavaScriptにおいての関数
-
JavaScriptでは関数は第一級オブジェクト。すなわち関数は、オブジェクトであり、操作したり、渡したりできる。関数は、Functionオブジェクトである。
-
初期値以外の値を返すには、返す値を指定するreturn文が関数内にないといけない。return文がない場合、基本はundefinedを返す。
-
関数の引数がプリミティブの場合は関数内での変更は外に影響しない。
-
引数がオブジェクトの場合
- オブジェクト本体の変更は外に影響しない。
- オブジェクトの要素を変更した場合は外に影響する。
functionTest.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function myFunc(object,x){
object.brand = "Toyota";
x = 2;
}
var x = 1;
var mycar = {
brand: "Honda",
model: "Accord",
year: 1998
};
// 'Honda 1'を表示
window.alert(mycar.brand + " " + x);
myFunc(mycar,x);
// 'Toyota 1'と表示される
window.alert(mycar.brand + " " + x);
</script>
</head>
<body>
</body>
</html>