2019年10月17日 星期四

js學習 函式

課程解析:    https://github.com/chyeh727/tut-snippet/blob/master/examples.js


課程網址:https://www.youtube.com/watch?v=gLX-KVq-6Kc&list=PLhW1K7xGelxefHXPDTfmXtJdyjhwGiXzK&index=9



1. 內建模組函式

    (1)Math.ceil(x)  ---> 取得一個大於or等於 x的整數中最小的一個

             Math.ceil(-1.5) ---->> -1

    (2)Math.random( ) ---> 取得一個大於等於 0 並且小於 1 的數   ( 0  <=  y  < 1 )

             Math.random( ) --->> 0.6849


2.函式 function

           function(   參數   ){   執行動作   };

   
      (1)定義一個匿名函式

    --->與(2)差別不大,只是用(2)一旦出錯,那個 stacktrace 會告訴你在哪個函式裡出錯。容易debug



      (2)直接宣告一個函式

    ---> 若console.log寫在return下方則不會顯示

   
      (3)參數 (ex: maxValue)

    ---> 能使code更有彈性

      (4) 執行函數裡可放另一組function

   -->result

   若用console.log
 
    --->result





3.可視範圍scope、執行環境excution  context、全域global


    結論: 當變數在執行環境找不到值時,便會往上一層找,直到找到為止

    (1)範例一

    --->在console.log中  who 在執行環境(function)找不到便往上一層(global)找到steph,
       n 在執行環境 (function)就找到了。
    --->結果:

    (2)範例2

    --->在console.log中  who 在執行環境(return function)找不到便往上一層,找到了Lebron,
          在執行環境 (return function)就找到了。
   ---結果:



    (3)範例三
       見https://www.youtube.com/watch?v=oSDyY8rItEE&list=PLhW1K7xGelxefHXPDTfmXtJdyjhwGiXzK&index=11
       13:11處


--->當Js看到宣告變數var, 他會在他的可視範圍內,將變數宣告var提到最上面,

      但宣告值留在原地


4. 函式裡的this

    *函式裡的this跟函式被呼叫的時候誰在焦點有關係
   *函式裡的this跟函式的定義位置無關

     (1)若完全沒有指定則會讀到全域

   ---> 使用"use strict"  嚴格模式,可避免此情形


    (2)呼叫特定函式的值



     1. 若想call出 myship 的值
                --->test.call(myship)
           --->myboat.Location.call(myship

        --->在函數前加 call ,並在參數中填入欲加入的物件 




    --->結果


5.call back練習


    --->當數到7時,執行callme這個函式
    --->同時callme這個參數填入為shout,印出"it's seven now"
    --->if是為了避免參數填入非函式時,錯誤執行

    --->結果

 6. 內建函式 setInterval、setTimeout     (  單位毫秒  )

        (1)setInterval  每幾秒做一次

                 setInterval(  執行函式  ,  間隔時間  )

        (2)setTimeout  幾秒後作那個動作

                 setTimeout(  執行函式  ,  間隔時間  )

沒有留言:

張貼留言

vue的筆記

 目錄 //mvvm //綁定 //資料綁定的方式 //修飾符 //按鍵修飾符 //縮寫 //class 動態切換 //computed //表單裡各元素的v-model綁定 //元件: 能夠獨立儲存自己的狀態 //vue 的生命週期 //切換className的各種寫法 //v...