関数
関数とは、処理をまとめたものです。一度定義して短文でその計算をスパッとやってしまう処理を行う訳です。
例えば、こういう計算。
let radius = 9
let pai = 4
let area =radius * radius * pai
console.log (area)copy
324
undefined
関数の入力式
function 関数名 (引数) {
// 処理を書く
}
※改行するときはshit + enter を入力する。それしないと実行してしまいます。
function calArea (radius) {
let pai =5
let area =radius * radius * pai
return area
}
undefined
ここではpai と radius という変数があって、let area =radius * radius * pai
とlet pai =5 でpaiは5なので calCircleArea という関数で定義した計算式を計算すると
calArea (5)
125
5*5*5=125 という計算になります。
calCircleArea(30) と計算しても 30*30*5で
4500
となります。
重要な概念 引数(ひき数)と返り値
function calArea (radius){
console.log(radius)
}
undefined
calArea(6)
6
ここではradius が引数である。6がインプットされる数字の役割を果たしている。
double(2)
4
double(150)
300
const result = double(20)
undefined
console.log(result)
40
function 記載例
function calArea(radius) {
let pai = 3
let area = radius * radius * pai
return area
}
undefined
calArea(10)
300
ここでいうところの300が返り値(結果として出てくる数値)
引数は複数持つこともできる
function say (firstName, lastName) {
console.log(`${firstName} ${lastName}`)
}
undefined
say('太郎', '田中')
太郎 田中
関数とスコープ
function hello (){
const message = "こんにちは"
}
console.log(message) ・・・・・・エラー!関数の中でしか使えない
const message ="こんにちは"
function hello ( ){
console.log(message)
}
undefined
hello()
こんにちは
引数・返り値なくても使えるのは使える
function showMessage(){
console.log ("こんにちは")
console.log ("さようなら")
}
undefined
showMessage()
こんにちは
さようなら
ここでは引数を入力しない場合は両方表示されるというケース。
他の書き方もできる
const hello = function ( ) {
}
アローファンクション↓
const hello = ( ) => {
}
Scope
let message
function say( ){
message = "hello" 関数の中で関数の名前を書き換えている処理
hello
}
say( )
console.log(message)
hello
undifined