屬於金牛座小子的草原

目前分類:瘋程式 (14)

瀏覽方式: 標題列表 簡短摘要

               嗨!繼上回8月寫了一篇怎麼建立一個Line Notify Token之後就一直沒有下文告訴大家怎麼應用這個Token(如果不知道怎麼申請Line Notify Token,請參考 https://jackterrylau.pixnet.net/blog/post/228035426-2019-08-09%E7%94%B3%E8%AB%8B%E4%B8%80%E5%80%8Bline-notify-token-%E4%BE%86-%E7%94%A8line-%E5%B9%AB%E4%BD%A0 ),因為我懶…..哈哈。也因為太懶,所以我決定先跳過教大家怎麼用PostMan測試Line Notify Token是否能成功送訊息出來。今天我先直接告訴大家怎麼用比較快。

  我們的目標是在Google建立一個使用者留言表單,裡面有兩個欄位,只有姓名欄跟留言欄,大概就像下圖這樣:

文章標籤

jackterrylau 發表在 痞客邦 留言(2) 人氣()

  Javascript的函式與變數在其可視性(或活動範圍[Scope])上與其他一般語言(主要是C語言)比較起來有相當大的不一樣,主要有以下兩樣差別:

  1. 變數可視性方面,一般語言的變數可視性是屬於區塊相依的,也就是變數只在把它包覆起來的”{} 程式區塊"可視(In Scope),出了區塊就不可視(Out Scope);但Javascript變數可視性是屬於函式相依的,也就是"變數從其在函式內被宣告處開始直到函式結束都是可視的(In Scope)
  2. 函式可視性方面,一般語言是只有在函式宣告後方有函式可視性,也就是在函式宣告之前不能使用函式,因為函式不存在;在Javascript的函式則有一個特別的特性"提吊(Hoisting)",一個內部具名函式(具名子函式)可視性包括其外部函式(父函式)的全部範圍,也就是說在某一函式內你是可以在定義其具名子函式之前就叫用該子函式。

口說無憑,讓我們舉幾個Javascript的例子:

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()


  在ES6之前,我們可以用函式參數的隱藏物件arguments來實作一個可以任意傳入一到多個參數數目的函式,而在ES6已經建議不要再使用容易誤用的arguments物件,改推薦使用”其餘參數/其餘運算子(Rest Parameter)”語法來建立不定參數函式。

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  最近總算是有點時間來翻閱React JS 的書,裡面介紹了琳瑯滿目的ES6 Javascript語法知識,真是深覺自己對Javascript語法的認識太過膚淺。

  其中有一個函式的重點讓我為之亮眼,那就是Javascript的函式在定義好參數名稱之後,每當使用函式時,未傳入任何值給函式的話,Javascript就會很雞婆的幫你代入undefined 值給那些沒有被傳入任何值的參數,換句話說,JavaScript的世界裡,函式的每一個參數永遠都有一個預設值undefined

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

 

  在看書時無意看見一段程式碼如下:

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  C語言的變數有三種記憶體管理模式:

  1. Automatic 記憶體管理模式: 變數的生命期間是從第一次宣告開始被自動配置記憶體,當生命期間結束,記憶體即被移除。一般變數宣告皆屬Automatic變數。
  2. Static 記憶體管理模式: 變數資料在main程式執行之前便已經被初始化,未被指定初始化的Static變數會被自動指定為0或NULL,一般變數加上Static宣告即屬於此種記憶體管理模式。

EX: static int x;

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  話說今天去志工社上課學了聽說了很久但一直沒機會碰甚或一堵風采的Scratch,於是乎一個小時的彈指之間就完成了兩個簡單的Scratch程式動畫,這真是太神啦!!傑克。

  在這邊就快速分享一下我隨手一做的Scratch作品。

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  這只是一篇小小關於Javascript 函式的小note,紀錄一些javascript function 物件的一些基礎知識,以便回頭看時可以快速找到有用的資訊。

  1. Javascript 具名函式的範圍: 包括其外部函式,也就是在其父函式所在範圍內該具名函式都有效。
  2. 一函式的匿名子函式根據閉包的原則,其可以存取父函式所宣告的物件或變數。
  3. 每個函式都有apply()call() function,目的是提供函式重新指定其函式上下文物件( this)。  二者之不同在於除指定this為何者的第一參數之外,apply 僅接受 陣列 引數 作為之後的實際參數, call 僅接受 一般引數 作為之後的實際參數。 
文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  深夜精神好睡不著覺,順手拿起C++快速翻閱異常處理的章節,一口氣就把該章給看完,看完以後深深有種感慨:為啥以前學生時代會覺得C++異常很深奧呢?

  C++異常其實被後來的繼承者們如C#,Java等給改良過了,由於繼承者更加物件導向化,所以其異常處理的使用上與功用上看起來都比C++要簡單而易用,但今天翻過一遍C++的異常處理,感覺好像也沒差那麼多了。

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

[程式語言] C++

[演算法]

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

PS. 程式設計時應避免使用全域變數,因為全域變數一遇修改將很難維護全程式的完整性(Debug困難)。

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

[程式語言] C++

[演算法]

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

  今天要來講一下JavaScript裡面很重要的一個觀念,閉包(Closure)。閉包是一個神奇的東西,簡單講就是當一個函式(無論是外部函式或內部函式)被宣告時,其可見範圍內的周圍所有變數與函式(通常指其父函式)都會被包起來變成一個防護泡,只要該函式還存在,該防護泡內的物件就會被保存下來,所以稱作閉包

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()

2017427日星期四 07:44:51

  在這邊要紀錄一個重要的概念,那就是當我們必須在Client端執行一個JavaSctipt運算時,如果該運算是一個耗時的工作(比方說一個超大迴圈),那麼由於Javascript是單一執行緒的工作特性,所以一旦執行這個運算工作,user勢必得等到該運算完成才能看到網頁最新狀態,這會造成使用者的頁面render卡頓現象,因為在運算完成之前,頁面無法做其他的事。

文章標籤

jackterrylau 發表在 痞客邦 留言(0) 人氣()