本記事ついて
本記事は プログラミング初学者の私が学習していく中でわからない単語や概要をなるべくわかりやすい様にまとめたものです。
もし誤りなどありましたらコメントにてお知らせいただけるとありがたいです。
関数
関数とは
一連の処置をまとめたもの
定義方法
・function文による関数の宣言
・関数リテラル
。アロー関数
関数の宣言
構文
function 関数名() {
//処理
}
お試し
function toshikidaisuki() {
console.log('利樹大好き');
}
function toshikimikan() {
console.log('利樹はみかんが好き');
}
こうするとデバックの横に関数名が表記されていると思います。
これで関数は出来たので別の関数で呼び出しを行えます。
お試し
function myFunction() {
toshikidaisuki();
toshikimikan();
}
このように別ファイルから呼び出しも可能
関数を表示する必要がないときアンカースコアを付けると見えなくなる。
プライベート関数
こうすると別のファイルからは呼び出せなくなる。(作ったファイルからは呼び出せる)
引数と戻り値
呼び出した関数に渡す値を引数
呼び出した関数から受け取る値を戻り値
構文
function 関数名(仮引数1, 仮引数2, ...) {
//処理
return 戻り値;
}
お試し
function toshiki() {
console.log(`利樹のBMI: ${bmi_(18,100)}`);
}
function bmi_(weight,height) {
return weight/(height/100)/(height/100);
}
デフォルト引数と残余引数
javascriptでは渡す仮引数の数と、それを受け取る仮引数の数は一致してなくても良い
引数が渡されていない場合に値を持つようにできる。
そのことをデフォルト引数と言う
構文
function 関す名(仮引数, 仮引数 = 値, ...) {
//処理
}
引数を配列として渡す方法もある。
それを残余引数と言う
function 関す名(..., ...仮引数) {
//処理
お試し
function toshiki() {
family_('パパ', 'ママ', '利樹', 'アッキー', 'アッキーママ');
}
function family_(father, mother, child, ...sister) {
console.log(father, mother, child);
console.log(sister);
}
値渡しと参照渡し
引数の渡し方は2種類ある。
値渡し
数値、文字列、真偽値などのプリミティブ値を引数に指定した場合は、値を複製して関数に渡す。
参照渡し
オブジェクトや配列を引数に指定した場合は、オブジェクトや配列のメモリ上のアドレスを渡す。
お試し
function myFunction() {
const x = 100;
console.log(`funcl_(x)の値: ${funcl_(x)}`);
console.log(`xの値: ${x}`);
}
function funcl_(y) {
y += 10;
return y;
}
*このように、参照渡しと値渡しを気にしないとえらい目にあいます。