2017年12月3日 星期日

about javascript this keyword

結論:

於某物件的方法(函式)之最外層(不在其他函式底下)執行環境(註1)中,this 指向該物件本身。
其餘其他情況, this 都指向 global 物件

註1:
每個函式被呼叫時js engine都會為各函式建立一個執行環境

範例


避免 this 關聯混淆的方法:

範例


特殊情況:

可使用call、apply於每次執行函式時傳入物件做為 this 參照
call 與 apply 的首個參數都是 this 參照的 obj,差別在於 call 第2個參數開始是一般參數傳入,apply則是第2個函數為陣列,內容為一般參數

使用函式的通用 bind 方法可綁定函式中 this 指向的物件, bind 方法接收 this 指向的物件,並傳回綁定 this 物件後的新函式


arrow function:

其中的 this 是延用其 lexical context 的 this
白話說就是該 arrow function 所在 scope 的 this 指向的物件
arrow function 中的 arrow function 關聯到的 this 都相同

特殊情況中指定 obj 的方式對 arrow function 沒有作用,不影響其 this 指向的物件

2017年8月1日 星期二

網路設定memo

中華小烏龜為base,分接出來的網路線接到其他分享器的情況下

1、從小烏龜分接出來的網路線總是接到分享器的wan插孔

2、分享器的設定方式:
a.此分享器想獨立pppoe撥接時,則其wan連線方式選pppoe,設定好帳密連線即可。其本身獨立管理自己的dhcp server

b.此分享器單純做為ap,單純從小烏龜的dhcp領取1個ip,不獨立撥接,則其wan連線方式選浮動ip,通常會自動取得小烏龜的dhcp配發ip,亦可自行設定想要的ip,在dhcp範圍內不衝突即可。其本身一樣有獨立的dhcp server

2017年2月15日 星期三

生活心得

1、合作、分享

如果什麼事都自己來,那成果必定限,因為人的壽命有限

以科技為例,如果個人的研究成果沒有分享出來,那每次都重頭開始,那人類頂多百歲的壽命就會是科技發展的上限

另一方面,如果個人的研究成果有分享出來,但其他人並沒有利用其研究成果,而是閉門造車,那結果也是一樣

所以,合作才是合理的做為,因為唯有合作才能有幾何的成長,才能累積成果,持續發展


2、持續、累積

積沙成塔,稱得上是成就的事,都一定需要相對應的付出,而阻礙自己的,通常是無法持續
明智的做法是把進度切割成較小的單位,然後每天做一點,只要能夠持之以恆,終會完成

3、80分的藝術

一件事情做到80分需要花費的時間可能是10,但做到90分可能要花費15,到100分可能要30,雖然時間比例不一定是這樣,不同種類的事情比例也會不同,但基本概念是對的
所以如果每件事都要做到100分,能做的事就少

這個世界很多事情都是符合2/8法則,生活中的事情也是,懂得對較不重要的8的部份只做到80分才能有更多的時間做更多的事

例如研究投資與打掃,研究投資是值得做到100分,打掃相對而言就不需要
但更彈性一點可以進一步延伸,雖然打掃不算是非常重要的事,但看不見的地方的灰塵和明顯的空間相對而言明顯的空間更需要被打掃乾淨

所以這是一門藝術