💡 เมื่อเราได้เรียนรู้วิธีการเขียนเว็บมาสักพักแล้ว ไม่ว่าจะเป็นพื้นฐานที่สำคัญ เช่น HTML, CSS และ JavaScript แล้วเราอยากจะอยากไปลองใช้ Library หรือ Framework เจ๋ง ๆ ที่ช่วยในการเขียนเว็บ อย่าง React ต้องรู้อะไรบ้าง ??
.
👉 ซึ่งไอเจ้า React เนี่ยมันมีพื้นฐานจาก JavaScript นั่นเอง เราจึงจำเป็นต้องรู้ Concept ที่สำคัญ ๆ ก่อนจะไปใช้งานเจ้า React นั่นเอง
.
มีอะไรบ้าง?? ไปดูกันเลยจ้า 🔥
.
⚙️ Basic Data Structure
Data Structure เป็นหัวใจหลักในการเขียนโปรแกรม ดังนั้นเราต้องเรียนรู้ Data Structure ประเภทต่าง ๆ ให้เข้าใจก่อน ตัวอย่างเช่น การรับ-ส่ง Request จาก API มายัง JS เราก็ต้องมีวิธีที่จะจัดการกับโครงสร้างของข้อมูลที่ดึงมาจาก API เพื่อให้เราสามารถนำข้อมูลนั้นไปใช้ได้ตามต้องการ
.
🌟 DOM
DOM หรือ Document Object Model เป็นการปรับเปลี่ยนโครงสร้าง HTML ให้เป็นแบบ Object โดยให้ JavaScript สามารถจัดการกับ HTML ผ่านโครงสร้างของ DOM ได้นั่นเอง ซึ่งเจ้า React จะใช้โครงสร้าง DOM เป็นหลัก เพื่อสร้างการโต้ตอบบนหน้าเว็บที่สะดวกยิ่งขึ้น ตัวอย่างเช่น เมื่อคลิกปุ่มสามารถแสดงข้อความ หรือเปลี่ยนสีของข้อความนั่นเอง
.
🚚 API
API ย่อมาจาก Application Program Interface ซึ่งเราต้องมีพื้นฐานการใช้งาน API เพื่อนำข้อมูลมาใช้บนหน้าเว็บนั่นเอง อาจจะไม่ต้องถึงกับสร้าง API ใช้ก็ได้นะ เพียงแค่รู้โครงสร้าง และวิธีการดึงมาใช้งานพื้นฐานก็พอแล้ว !!
.
🔧 Axios / Fetch
เครื่องมือสำคัญที่ช่วยให้เราดึง API ต่าง ๆ มาใช้งานได้ง่ายมากขึ้นนั่นเอง !! ซึ่งเป็นสิ่งสำคัญมาก ๆ ในการพัฒนาหน้าเว็บ เพราะมันจะช่วยให้เราสามารถรับ-ส่งข้อมูลแบบไดมามิก และเชื่อมต่อระหว่าง Back-end ได้ง่าย
.
📚 ES6+
สิ่งสำคัญคือเราต้องเรียนรู้วิธีเขียน JavaScript มาตรฐานใหม่ ซึ่งจะช่วยให้โค้ดของเรามีรูปแบบที่อ่านง่ายมากขึ้น !! ซึ่งใน React ที่จะนิยมใช้ ได้แก่ Template Literals, Arrow Functions, Promise, Async / Await, const & let vs var และ Spread Operator นั่นเอง
.
🗂️ JS Array Methods
เมื่อเราสามารถดึงข้อมูลจาก API มาใช้ได้แล้วนั้น เราก็ต้องรู้จักวิธีจัดการกับข้อมูลนั้น ๆ ด้วยนะ ซึ่งมันจะง่ายขึ้นถ้าเรารู้จักใช้ความสามารถของ Array Methods ต่าง ๆ ซึ่งที่นิยมใช้กัน ได้แก่ map(), forEach(), find(), และ filter() เป็นต้น บอกเลยว่าถ้าใช้พวกนี้เป็น ทำให้ชีวิตง่ายขึ้นแน่นอน!! 5555
.
อะทั้งหมดนี้คือ Concept JavaScript พื้นฐานที่สำคัญที่คนเขียน React ต้องมีนะ หวังว่าเพื่อน ๆ จะชอบกันน้าาาา ใครมีอะไรเพิ่มเติมคอมเมนต์ไว้ได้เลย 🥰
.
📑 Source : https://lorenzejay.hashnode.dev/javascript-concepts-you-should-know-before-jumping-into-react-or-any-other-frontend-framework
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
同時也有2部Youtube影片,追蹤數超過14萬的網紅アスキー,也在其Youtube影片中提到,「週刊アスキー」読み放題!アスキー倶楽部 デジタル版 No.1352(2021年9月14日発行) https://id.ascii.jp/weeklyascii 巣ごもり強化の次の段階はホームセキュリティーだッ! 涼しい夜はじっくり名作ゲームを遊んでみよう! =================...
「javascript find」的推薦目錄:
- 關於javascript find 在 BorntoDev Facebook 的最讚貼文
- 關於javascript find 在 Taipei Ethereum Meetup Facebook 的精選貼文
- 關於javascript find 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
- 關於javascript find 在 アスキー Youtube 的最讚貼文
- 關於javascript find 在 serpentza Youtube 的最讚貼文
- 關於javascript find 在 JavaScript 陣列處理方法[filter(), find(), forEach(), map(), every 的評價
- 關於javascript find 在 Find object by id in an array of JavaScript objects - Stack ... 的評價
- 關於javascript find 在 JavaScript Array find() Method - ES6 Tutorial 的評價
- 關於javascript find 在 smeijer/unimported: Find and fix dangling files and unused 的評價
- 關於javascript find 在 JavaScript 的forEach,filter, find, map 用法- YouTube 的評價
- 關於javascript find 在 Quickstart: Facebook SDK for JavaScript 的評價
javascript find 在 Taipei Ethereum Meetup Facebook 的精選貼文
📜 [專欄新文章] Scaling Ethereum 參賽心得
✍️ Johnson
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Scaling Ethereum 是一場由 ETHGlobal 所舉辦的線上黑客松,也是我第一次參加與以太坊有關的黑客松活動,這篇文章就來分享一人參賽的過程與心得。
源起
一開始是在 telegram 群組中得知這場比賽的消息,因緣際會之下剛好有人想組隊參賽,於是就在報名截止的前一天一起跟著報名了。
報名的方式除了填一些基本資料外,最特別的是還要 stack 以太幣,也就是要傳送 0.01 顆以太幣給主辦方,規則是必須在比賽的最後,有提交作品的人才能贖回 0.01 顆以太幣,之後看到 meme 頻道有人留言:
When your project is incomplete but you submit to get back stake.
一方面,這確實也會激勵你好好把比賽完成,就算沒做完也要有些成果上去,這也是主辦方秉持的精神,他們認為大家來黑客松相互學習成長,競賽獎金則是其次。
獎金
比賽方式是由 25 個左右的贊助者(sponsor)分別提供獎金,每個 sponsor 都有錄製一段影片,說明怎麼獲得他們的獎金,大部分會要你使用他們開發的工具,或者必須跟 sponsor 在做的研究有關,去實作出創新的作品。可參考:Prizes — Scaling Ethereum
你的專案可以選擇要投入哪個 sponsor 的獎金,一個專案可以投入多個 sponsor 底下,這樣獲獎機會也會比較高。
我選擇的 sponsor 是 zkSync,他們的說明如下:
zkSync is a user-centric zkRollup developed by Matter Labs. It uses zero-knowledge proofs to keep data availability on mainnet to achieve exponentially lower transaction costs. You may have seen us powering projects such as payments and Gitcoin Grants. We are currently rapidly developing zkSync 2.0, which will feature EVM-compatibility in testnet May 2021, soon followed by zkPorter, our new exponential scalability solution.
PrizeszkSync will be awarding their Prizes as follows:
- 1 winner — 4,000 USDC
- 2 winners — 2,000 USDC
- 4 winners — 500 USDC
We encourage builders to utilize zkSync SDK’s, implemented in JavaScript/Typescript and Rust. Prizes will be awarded to projects that make it simpler and easier for non-technical users to use zkSync, other ideas include integrations of current tools such as in Gitcoin Grants and tools for easy mass payments and multi-sigs.
社群互動
這個 hackathon 很棒的地方是他把使用者體驗做的很好。每個人都會有自己的 dashboard 顯示目前專案的進度和一些訊息。
Check-In #1 和 Check-In #2 的階段會要你提供專案的構想,你隨時都可以修改。主辦方會看你提交的資訊,幫助你找到適合的 sponsor,或是給你一些建議,就算是一人參賽也能感受到回饋。
整個賽程期間,社群都是使用 discord 在互動,discord 裡頭有很多頻道,像是基本的大會報告的頻道,或是一些不重要的迷因、閒聊頻道都有。
每個 sponsor 也都有自己的頻道,我就會在 sponsor-zksync 的頻道詢問技術的問題,例如我想問問 zkSync 一些關於專案構想的意見:
Hi there, I want to build a gas fee relayer which make my ERC-20 token transfer without transaction fee, to be more precise, delegating gas payment by another party. I think this is done by GSN https://opengsn.org/ , but maybe it could built on L2 with zkSync? I’m not sure, could somebody give me some advice about this topic?
zkSync 團隊的人回應我:
This is an amazing idea! This can totally be built, as we support batching transactions which can be used for all kinds of creative things such as paying for transaction fees in an erc-20 token. Your idea seems like a combination of that and the gitcoin grants integration. To get started, I suggest you watch the short 10 minute presentation I made on using the SDK and batching. Looking forward to your project!!
在 Check-In #2 的時候,我提交新版的專案構想,有一個欄位是問:「目前專案遇到什麼阻礙?」我的問題應該是被主辦方貼給 zkSync 的團隊,於是 zkSync 的團隊成員就用 discord 私訊我,貼了一些程式碼教我怎麼使用他們的 Javascript SDK,這突如其來的救援也幫了大忙。
除此之外,主辦方每個禮拜都會寄 email 通知一些重要的活動,賽程期間舉辦了四個 Summits 研討會,邀請世界各地有名的以太坊開發者分享議題,主辦方還有一個自己的 TV 網頁,直播所有的線上活動。這些活動都有錄影,可以在 youtube 看到過去所有的演講內容:https://www.youtube.com/c/ETHGlobal/videos
因為我的作品是使用 zkSync 的 Javascript SDK 製作的,好像也只能投稿 zkSync 作為獎金的 sponsor,不過主辦方在最後一個禮拜,也寄 email 告訴我說可以多投稿不同的 sponsors 看看,他依據我的專案構想給我一些適合的 sponsors 作為參考。
不過最後我還是只投稿了 zkSync,有點懶著再看其他 sponsors 的文件,也覺得其他 sponsors 的題目需要花比較大的功夫才能完成,一個人能力有限,就做點簡單的東西就好。
關於我的專案 — Gas Relay Service
在以太坊的世界,每一筆交易都需要額外付一筆交易費,也就是以太坊的 gas fee。
我的專案是讓「收款人」能夠幫「付款人」支付以太坊的手續費。
在黑客松之前,我就想研究「第三方支付手續費」的議題,因此我大部分時間其實都在研究一般的 meta-transactions 是怎麼實作的,有興趣的人可以看看 simple meta-transactions 的原始碼:https://github.com/chnejohnson/simple-meta-transaction
之後我才開始玩 zkSync 的 SDK,並研究怎麼在 Layer 2 實現第三方支付手續費的問題,以下就附上作品連結以及簡單的專案介紹給有興趣的人參考:https://showcase.ethglobal.co/scaling/gas-relay-service-on-zksync
The target is that token sender can choose to find another account to pay for fee. The another account can be (1) the token receiver’s account, (2) sender’s another account, (3) third party’s account.
In this project, I finished the demo, which is the (1) above, that receiver pay gas fee for the sender.
有趣的是,我在研究 meta-transactions 時學到很多智能合約的寫法,結果在最後專案上都沒用到(沒寫到合約的程式),zkSync Javascript SDK 其實很簡單,他們的文件寫得很清楚。最後 Demo 還是用 zkSync 團隊的成品修改來的…XD。
所幸在沒有懂太多技術的前提下完成了這場黑客松的專案,成功贖回了 0.01 顆以太幣。
評審與決選
整個賽程來到最後一個禮拜,主辦方安排兩天的時間進行 Judges,使用 zoom 進行線上研討會,一個人基本上是 7 分鐘,前 4 分鐘播放 Demo 簡報,後三分鐘會有評審問問題。
第一個問題是說:「Demo 中你是使用 zkSync 的錢包網頁去操作,那實際上你做得部分是什麼?」
我就回答我在他們的網頁上加了一顆按鈕,使用他們的 SDK 做出 gas relay 的功能,還有一個後端的 server 去作 relay。
第二個問題大概是問:「什麼樣的情境下會需要由 receiver 幫 sender 支付 gas fee?」
我的回答是,在一般超商購物的情境,消費者通常只支付商品的價格,不會支付額外的交易費,我認為以太坊的手續費應該屬於軟體的營運成本,由賣方支付比較適合。那如果賣方希望手續費的成本是由消費者承擔,可以直接調高商品的價格。
當然,我英文講得零零落落,希望評審有聽懂就是了…
最後一場直播就是 Finale 決選,主辦方選出十二個隊伍,公開再 Demo 一次,以及提供線上觀眾詢問問題,至此整個賽程就差不多進入尾聲。
決選後的不久,主辦方就公布了這次有獲得獎金的隊伍,幸運拿到了 zkSync 頒發的小獎~
zkSync — Matter Labs
- Zeneth — 2000 USDC
- ZeroSwap — 1500 USDC
- Kangaroo — 500 USDC
- Gas Relay Service — 500 USDC
後記
這次的參賽隊伍中,Zeneth 跟我的主題非常相似:
Zeneth — Use Flashbots to enable arbitrary meta-transactions so EOAs can enter L2s without ETH
另一個我覺得有趣的專案是 Alexandria:
Alexandria — A dApp using STARKs to verify aspects of your identity without revealing more than you should
沒想到主辦方 ETHGlobal 下個月又要再舉辦一場黑客松,有興趣的人可以看看:https://defi.ethglobal.co/ ,這次的主題是 De-Fi。
最後,只要有到 ETHGlobal 的 TV 網頁參加 Summit 研討會的直播,就能夠獲得 POAP 勳章,它就是一個酷東西~😋
POAP: Proof of Attendance Protocol
Scaling Ethereum 參賽心得 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
javascript find 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
มีข้อมูลอยู่ในมือก็ไร้ประโยชน์ ถ้าคุณไม่โค้ดแสดงผลออกมาเป็นภาพได้
.
การทำ visualization กับ data จุดประสงค์เพื่อนำข้อมูลมาแสดงผลเป็นกราฟฟิกสวยงาม สามารถเล่าเรื่องได้ตามภาพ ซึ่งจะเข้าใจมากกว่าอธิบายเป็นตัวอักษร หรือพูดปากเปล่า
.
ลองนึกถึงเวลาเราไปพรีเซนต์งานให้ลูกค้าหรือ users ดูซิ
ยืนหน้าห้องประชุม สบตาคุยกันไปคุยกันมา
มัวแต่คุยภาษาเทคนิค ยิ่งไม่เห็นภาพด้วย
.
users ฟังจะงงแค่ไหน???
เดี่ยวมาบ่นคนไอที .....พูดอะไรไม่รู้เรื่อง....
เดี่ยวไม่จ่ายเงินจ้างเรา ...เอ๊ะเกี่ยวกันไปเปล่า
.
พอดีผมได้มีโอกาสแตะ ได้มีโอกาสเล่นไลบรารี่ฝั่ง JavaScript
เอาไว้แสดงผลข้อมูล หรือก็คือการทำ visualization กับข้อมูลนั่นเอง
แล้วเราแสดงผลหน้าเว็บบราวเซอร์ได้เลยครับ
.
ใช้งานได้ฟรีนะ เลยมาแชร์ให้ดู
ชื่อไลบรารี่คือ "d3.js" ลองอ่านคู่มือการใช้งานได้ที่นี้
https://d3js.org/
.
ตัวนี้นิยมมาก ตัวโค้ดเผยแพร่อยู่ใน github
มีคน fork ไปเกือบ 2 หมื่น ให้ดาว 8 หมื่น เกือบๆ 9 หมื่น
เอกสารถูกแปลไปหลายภาษา
https://github.com/d3/d3/wiki
(ยกเว้นภาษาไทยไม่มีนะครับ ให้ตายซิผับผ่า)
.
ไลบรารี่ตัวนี้ใช้ JavaScript ในการเขียนแสดงกราฟต่างๆ
แต่เป็น ES6 ขึ้นต่ำขึ้นไปนะ
.
ใครไม่เคยเขียน JavaScript อาจงงเล็กน้อยถึงขั้นมาก
เพราะจะเจอไวยากรณ์ชวนปวดหัวเล่นๆ
เจอทั้งวงเล็บ และปีกกาซ้อนหลายตลบ
.
ถ้าใครไม่เป็น javaScript ซื้อหนังสือของผมมาอ่านได้เลย
(โปรโมทขายหนังสือหน่อย ไม่ได้โฆษณานาน)
.
https://docs.google.com/…/1FAIpQLSfZp0Vz-p6Oj1cDA…/viewform…
It's useless to have information on hand. If you don't have a code, you can show it as a picture.
.
Visualization with data. Purpose to show information as graphics. Beautiful graphics. You can tell stories in a picture which is more understood than describing letters or empty words.
.
Think about when we went to present a presentation for customers or users.
Standing in front of the conference room. Eye contact. Let's talk.
Just talking in technical language. The more I don't see the picture.
.
How confused will the users listen???
I will complain about IT people..... I don't know what to say....
I won't pay for you to hire me... eh, related.
.
I have a chance to touch it. I have a chance to play the JavaScript library.
Is it for visualization or is it visualization with information?
And we can show you the results of the browser web page.
.
It's free to use. Let's share.
The name of the library is ′′ d3 js ′′ Check out the usage manual here
https://d3js.org/
.
This one is very popular. The code is published on github.
There are people fork going to be almost 2 ten thousand to give 8 ten thousand stars. Almost 9 ten thousand.
Documents are translated in many languages
https://github.com/d3/d3/wiki
(Except Thai, I don't have it. Damn. Pub)
.
This library uses JavaScript to write graphs
But ES6 is going to get lower.
.
Who has never written JavaScript. A little to much.
Because I will find grammar to make me feel headache for fun.
Found both brackets and wing stacked.
.
If anyone isn't javaScript, buy my book, read it.
(Promote to sell books. I haven't advertised for long time)
.
https://docs.google.com/forms/d/e/1FAIpQLSfZp0Vz-p6Oj1cDAKIXfmexAbTh2vFDymFYlCIn8JwkA7UIrA/viewform?c=0&w=1Translated
javascript find 在 アスキー Youtube 的最讚貼文
「週刊アスキー」読み放題!アスキー倶楽部 デジタル版 No.1352(2021年9月14日発行)
https://id.ascii.jp/weeklyascii
巣ごもり強化の次の段階はホームセキュリティーだッ! 涼しい夜はじっくり名作ゲームを遊んでみよう!
=========================================
「週刊アスキー」No.1352の中身は?
週刊アスキーNo.1352(2021年9月14日発行)
https://ascii.jp/elem/000/004/068/4068962/
【表紙の人】
太田奈緒
【特集】
ホームセキュリティー向上化計画
【ニュース】
QWERTYキー付き小型スマホ Unihertz「Titan Pocket」が到着!/ASCII Top Stories
【特集】
編集者が選ぶ激推しゲーム12
【連載】
ExpertBook B9/ASCII Power Review
【連載】
YouTuberのなかでなぜVRが流行らないのか/電書のナカイド
【連載】
ノートPCのキーボードに載せる快適空間「nosetty」/T教授の戦略的衝動買い
【連載】
読み込んだ画像から自動的に音楽を作ろう/JavaScriptの部屋
【連載】
eGPU BOXで小型PC「GPD WIN3」の性能強化!/ジサトラ!
【連載】
新たな人類史を創造する4Xストラテジーゲーム「HUMANKIND」/ゲーム部+
【ニュース】
ノートPCの機能を拡張できる多機能USBタイプCドック/アスキー秋葉原情報局
【連載】
キーワードは「転職なき移住」/週替わりギークス
【連載】
米軍車両ハンヴィーに海兵隊のライセンスプレートを装着/オヤジホビー
【連載】
顕微鏡カメラもある「OPPO Find X3 Pro」/今週のねこちゃん写真館
【連載】
マクドナルドの「おもいっきりポテナゲセット」/今週のグルメ
【連載】
中国、ゲームは週3時間まで/ASCII倶楽部に行こう!!
【連載】
斬新なファッションアイテム特集/アスキーストア通信
【連載】
今年のAppleイベントは盛りだくさん?/コラムジャングル
【ニュース】
小型のシャープ製5G対応モバイルルーターがドコモから発売/ASCII.jp NEWS
【連載】
「親心が芽生えました」 佐々野愛美/今週のグラビア
【連載】
福田有宵先生が占う! 今週の運勢/9月14日〜9月20日
【連載】
中判カメラは未来であるべし/NeXT=完全予想
CM編集:ラッキー橋本
-----------------------------------
★ムービーサイト「アスキーTV」http://ascii.jp/asciitv/
★ニュースサイト「ASCII.jp」http://ascii.jp/
★超ファンクラブ「ASCII倶楽部」http://ascii.jp/asciiclub/
----------------------------------
javascript find 在 serpentza Youtube 的最讚貼文
You'll see young women coding, soldering and selling all sorts of technology in the tech markets of Mainland China, this is very different to the traditionally male dominated tech industry in the west. That isn't to say that women are not in the minority here, but they're a big part of the technology game, especially in China's silicon valley of hardware, Shenzhen. I meet up and speak to the most famous female Maker and Coder Naomi "SexyCyborg" Wu and we go for an adventure around China's biggest technology market. Come and join us to find out how women are holding up half the sky in the Chinese technology sector.
Naomi's channel: https://www.youtube.com/channel/UCh_ugKacslKhsGGdXP0cRRA
Naomi's twitter:
@RealSexyCyborg
Max's contact details:
Email: [email protected]
Mobile: +8615889674711
QQ: 2853753197
M.J's contact details:
Email: [email protected]
Mobile: +8613713895188
QQ: 1661331991
C-milk's Hooters video: https://www.youtube.com/watch?v=dQ4mSVB2CCU
Naomi Wu (a pseudonym) is a Cantonese DIY maker who lives and works in Shenzhen, China; she is notable for her strong advocacy of women in STEM, transhumanism, open source, and body modifications, variously challenging both gender and tech stereotypes with her flamboyant public persona. She first came to public prominence on Reddit, where she has mostly male followers, and she maintains active Reddit and Twitter accounts under the noms de plume of SexyCyborg and RealSexyCyborg, respectively, as an internet personality. Professionally she is a web developer, coding in Ruby on Rails and JavaScript under a masculine pseudonym for overseas clients both for safety's sake and to preclude gender discrimination; she also reviews electronics. She regards "Chinese gadgets" as good as or better than foreign, and on International Women's Day 2017 she was listed as one of the 43 most influential women in 3D printing, a male-dominated field, by 3D Printer & 3D Printing News.
⚫ Watch Conquering Southern China (my documentary) and see China like no one outside of China has ever seen it before: https://vimeo.com/ondemand/conqueringsouthernchina
⚫ Support me on Patreon: http://www.patreon.com/serpentza
Join me on Facebook: http://www.facebook.com/winstoninchina
Twitter: @serpentza
Instagram: serpent_za
My other channel: https://www.youtube.com/c/advchina
Music used: Virtual Vice - Sanctuary Runner
Artist's bandcamp: https://new-world.bandcamp.com/album/off-duty
javascript find 在 JavaScript Array find() Method - ES6 Tutorial 的推薦與評價
The find() executes the callback function for each element in the array until the callback returns a truthy value. If the callback returns a truthy value, the ... ... <看更多>
javascript find 在 JavaScript 陣列處理方法[filter(), find(), forEach(), map(), every 的推薦與評價
find () 與filter() 很像,但find() 只會回傳一次值,且是第一次為true 的值。 var findEmpty = people.find(function(item, index, array){ }); ... ... <看更多>
相關內容