---
# System prepended metadata

title: JS筆記 function

---

# JS筆記 function
function有點像是印章，我們把這個印章刻出來，想使用的時候就可以拿出來蓋章。

```javascript
function function'name (){
    當你呼喚function時想要他做的事情
}
```
在（）加上參數，他會引入引數的值，（）裡面可以不寫

例如
```javascript
function hello_world(){
    console.log("hi")
}
hello_world()
```
這裡印出hi
#
```javascript
                #參數
function sayHi(a,b,c){
    console.log(a,b,c)
}
sayHi(1,2,3)
      #引數
```
印出1 2 3

#

function啟動後馬上會進行建立期:註冊名字，然後緊接著進入執行期。因此如有在function的前面呼喚他是會收得到的。

```javascript
hello_world()
function hello_world(){
    console.log("hi")
}
```
會印出hi
#

```javascript
匿名函數
const sayHi = function(){
    console.log("hi")
}
sayHi()
```

在function裡面進行運算時，要加上return回傳裡面的值。
如果不這麼做，在function裡運算的結果傳不出去，會回傳undefind，找不到值。
```javascript
function doule(n){
    2*n
}
let result = doule(5)
console.log(result)
```
沒有回傳值，這裡會印出undefind

```javascript
function doule(n){
    return 2*n
}
let result = doule(5)
console.log(result)
```
印出10
要有return才有明確的回傳值，不然就會是undefind
