日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JavaScript 很少為人所知的玩法

瀏覽:18日期:2023-11-15 11:49:22

Stack OverFlow 的聯合創始人杰夫·阿特伍德(Jeff Atwood)曾提出著名的“Atwood定律”,即:

Any application that can be written in JavaScript, will eventually be written in JavaScript.

任何能夠用 JavaScript 實現的應用,最終都必將用 JavaScript 實現。

毫無疑問,JavaScript 已然成為當下最流行的編程語言之一,這點已經不需要爭論了,不服的話前后端乃至全棧工程師肯定跟你急。最近, hackereart 就發表過一篇博文,文中描述了2016年主流編程語言的使用情況: JavaScript 很少為人所知的玩法 JavaScript 很少為人所知的玩法 JavaScript 很少為人所知的玩法 JavaScript 很少為人所知的玩法

他們因此預測今年最流行的語言將會是:

JavaScript Java Python PHP Matlab Arduino Swift

作為編程語言界的當紅辣子雞,JavaScript 已將其觸角延伸到了很多領域,變換出了很多新奇的玩法,下面的內容我試圖探索一些 JavaScript 很少為人所知的玩法:

Espruino

Espruino 是一個專門為微控制器(MCU)設計的 JavaScript 解釋器,最低資源開銷 128KB Flash & 8KB RAM,使用 MPL-2.0 協議開源。

作者 Gordon Williams 簡直就是個全才,最近還設計了一款硬件 Puck.js 來支持 Espruino。

在這位巨人的肩膀上,我做了一些修改,讓其能夠兼容我自己開發的硬件,修改后的代碼我已經提交 GitHub 了,感興趣的小伙伴可以克隆下來玩玩。

Star

$ git clone https://github.com/makerdiary/Espruino.git$ cd Espruino# 將 YS-Beacon 連接至 PC$ YS_BEACON=1 RELEASE=1 make flash# 終端跳出一大堆字符,板子上的藍色燈閃爍,最后一切輕松搞定~...[====================] 100%DEBUG:root:reset stop on Reset INFO:root:Programmed 446464 bytes (109 pages) at 14.56 kB/s DEBUG:root:uninit board <pyOCD.board.mbed_board.MbedBoard object at 0x1025e8a90> DEBUG:root:closing interface

Espruino 還有一個配套的開發工具 Espruino Web IDE ,可以用來編輯代碼、下載程序,甚至可用于圖形化編程。下面是簡單實現 LED 閃爍的代碼,有沒有一種似曾相識的感覺:

var on = false; setInterval(function() { on = !on; LED1.write(on);}, 500);

JavaScript 很少為人所知的玩法

有意思的是,Espruino 硬件上跑著 JavaScript 的解釋器,上傳給它的 JavaScript 代碼只是保存在 RAM 中,掉電就沒有了,這點跟瀏覽器的做法居然如出一轍,也正好體現了其具備動態解析的特點。

JerryScript

如果說 Espruino 有點玩具化,那 JerryScript 應該說就比較產品化了,而且 JerryScript 的資源開銷也不高,RAM 可小于 64KB,ROM 可小于 200KB。

一說到 JerryScript 就一定離不開 IoT.js 和三星,他們的“三角關系”是這樣的:

IoT.js 是一個使用 JavaScript 編寫的物聯網應用平臺;JerryScript 是一個適用于嵌入式設備的小型 JavaScript 引擎;而三星開源了 IoT.js 和 JerryScript。

整個內部架構如下: JavaScript 很少為人所知的玩法

下面這一小段代碼可以顯示 JerryScript 的基本工作流程:初始化引擎 → 解析 JavaScript 代碼 → 執行代碼 → 結束運行,釋放內存。

{ jerry_init(JERRY_FLAG_ENABLE_LOG); char script[] = 'print (’Hello, World!’);'; jerry_parse(script, strlen(script)); jerry_run(); jerry_cleanup();}

查看 JerryScript 的源碼,發現已經能夠在一些 RTOS(如 Zephyr、mbed OS 等)上運行了。去年在深圳舉行的 mbed Connect Asia 2016 大會上,Jan Jongboom 說他已經將 JerryScript 帶到 mbed OS 5 上來了,還介紹了幾個簡單的示例。 JavaScript 很少為人所知的玩法

既然已經支持 mbed OS 5 了,那事情就好辦多了,可以輕松支援自己開發的硬件,至于開發環境的搭建可以參考 README ,不難實現。

$ git clone https://github.com/YS-Beacon/mbed-js-example.git$ cd mbed-js-example# 國內的朋友可以使用淘寶鏡像安裝依賴:cnpm install$ npm install # 此處 gulp 用于獲取 JerryScript 源碼$ gulp# 獲取 mbed os 最新源碼$ cd ./build/jerryscript/targets/mbedos5/mbed-os$ git checkout master$ git pull# 從我的倉庫拉回相關目標硬件配置文件$ git remote set-url origin https://github.com/makerdiary/mbed-os.git$ git pull# 指定目標板子,自動編譯$ gulp --target=YS_BEACON

再來看下 JavaScript 所編寫應用的源碼,是不是有種既陌生又親切的感覺:

// blink_leds.jsvar led = DigitalOut(LED1);var blink = function() { led.write(led.read() ? 0 : 1); print('blink! LED is now ' + led.read());};module.exports = blink;// main.jsvar blink = require(’./blink_leds’);setInterval(function() { blink();}, 1000);

將編譯好的 mbedos5.hex 文件下載到目標板,看看是不是你想要的結果: JavaScript 很少為人所知的玩法

Blockly

如果你對編程語言或命令行窗口閃爍的光標感到恐懼的話,Blockly 或許是拯救你的利器,讓你變得好玩有趣。 JavaScript 很少為人所知的玩法 Blockly 是 Google 開發并開源的一個 JavaScript 庫,用于實現圖形化編程,只需拖動一些表示變量、表達式、循環等含義的圖形塊,組合在一起就可以完成編程,是不是很酷?

實際上,Blockly 只做一件事:可視化編輯,生成代碼。而代碼背后的行為,Blockly 是不管的,這就留給開發者們非常大的想象空間,例如 Ozobot 就開發了一個智能機器人玩具,玩家可以使用 Blockly 編程機器人的行為:

您的瀏覽器不支持 video 標簽。

是不是很好玩?可惜就是沒有機器人。不過,你可以先用 Espruino 體驗一下 Blockly 的玩法,再一步一步構建你自己的機器人(沒錯,前面提到的 Espruino 是支持 Blockly 的): JavaScript 很少為人所知的玩法

未完待續

是不是還沒有玩過癮?更多好玩的東西,我還在探索中,等我學上手就來分享,感興趣的朋友可以稍微關注一下。

來自:https://makerdiary.co/interesting-things-about-javascript/

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲激情不卡| 欧美在线看片| 亚洲一区国产一区| 欧美亚洲三级| 亚洲黄色中文字幕| 在线亚洲欧美| 国产麻豆一区| 久久高清免费| 国产视频一区三区| 欧美片第1页综合| 成人午夜精品| 亚洲精品第一| 亚洲黄色免费av| 中文字幕一区二区三区日韩精品 | 免费精品视频| 久久av影视| 国产综合欧美| 亚洲免费专区| 国产精品久久久久久久久妇女| 婷婷综合亚洲| 久久99精品久久久久久园产越南| 亚洲第一精品影视| 国产欧美二区| 狠狠色狠狠色综合日日tαg| 国产伦乱精品| 日韩视频免费| 欧美精品成人| 午夜在线精品偷拍| 久久久久久婷| 亚洲精品第一| 亚洲不卡av不卡一区二区| 日韩和欧美的一区| 欧美日韩在线观看首页| 人人精品人人爱| 一区二区精品伦理...| 日韩在线观看一区二区三区| 国产在线|日韩| 国产精品男女| 在线看片日韩| 久久国产中文字幕| 老司机精品视频在线播放| 免费久久99精品国产| 丁香六月综合| 国产精品嫩模av在线| 免费日韩精品中文字幕视频在线| yellow在线观看网址| 日韩不卡在线观看日韩不卡视频| 丝袜av一区| 久久成人高清| 日韩极品在线观看| 亚洲精品va| 日韩成人高清| 精品视频国产| 国产日韩欧美| 亚洲日本久久| 国产婷婷精品| 成人精品中文字幕| 精品国产精品国产偷麻豆| 日韩精品社区| 久久都是精品| 欧美~级网站不卡| av日韩中文| 国产精品一卡| 日韩一区网站| 中文字幕亚洲精品乱码| 91久久视频| 2023国产精品久久久精品双| 亚洲人成在线网站| 97欧美在线视频| 免费在线日韩av| 日本a口亚洲| 日韩美女精品| 中文视频一区| 99国产精品私拍| 99精品国产一区二区三区| 国产suv精品一区二区四区视频| 国产日产一区| 亚洲2区在线| 亚洲视频二区| 免费成人性网站| 蜜桃视频一区二区| 在线精品福利| 亚洲bt欧美bt精品777| 综合干狼人综合首页| 石原莉奈在线亚洲三区| 蜜臀av一区二区三区| 免费观看久久久4p| 亚洲欧美一级| 日韩欧美美女在线观看| 亚洲三级国产| 亚洲精品极品| 日韩**一区毛片| 日韩在线视频一区二区三区| 蜜臀国产一区二区三区在线播放| 国产成人久久精品麻豆二区 | 亚洲香蕉网站| 精精国产xxxx视频在线野外| 日韩欧美一区二区三区在线视频 | 亚洲丝袜美腿一区| 中文字幕一区二区三区四区久久| 亚洲精品福利| 国产一精品一av一免费爽爽| 日韩国产在线观看| 国产精品亚洲欧美| 欧美国产中文高清| 91欧美国产| 国产亚洲一区二区手机在线观看| 久久国产亚洲| 日韩午夜黄色| 亚洲综合五月| 国产毛片一区二区三区| 成人在线视频区| 91精品国产自产在线观看永久∴ | 男女性色大片免费观看一区二区 | 免费精品视频最新在线| 日韩中文字幕一区二区高清99| 日本伊人午夜精品| 国产精品22p| caoporn视频在线| 激情久久五月| 蜜桃av一区二区| 日本va欧美va瓶| 欧美激情久久久久久久久久久| 久久久久久夜| 婷婷综合在线| 午夜性色一区二区三区免费视频| 国产精品99久久免费| 日韩高清中文字幕一区二区| 中文亚洲免费| 国产日韩一区二区三区在线| zzzwww在线看片免费| 亚洲视频播放| 国产精品乱战久久久| 色吊丝一区二区| 亚洲精品少妇| 视频在线不卡免费观看| 中文一区在线| 免费亚洲婷婷| 欧美特黄一级| 国产激情综合| 亚洲天堂黄色| 欧美亚洲tv| 91精品一区二区三区综合在线爱 | 国产91在线精品| 美女尤物久久精品| 久久精品国产福利| 亚洲精品在线观看91| 日韩高清二区| 亚洲天堂av影院| 综合日韩在线| 亚洲精品**中文毛片| 免费在线观看不卡| 色一区二区三区四区| 99日韩精品| 精品国产亚洲一区二区在线观看| 在线亚洲精品| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 日本成人在线视频网站| 色偷偷偷在线视频播放| 婷婷综合福利| 99久久亚洲精品蜜臀| 日本色综合中文字幕| 五月激情久久| 欧美日韩一区二区三区四区在线观看 | 国产精品99久久精品| 视频一区二区欧美| 日本在线高清| 欧美一区精品| 欧美日韩三区| 久久精品色播| 亚洲精品日本| 欧美日韩激情在线一区二区三区| 国产精品最新自拍| 宅男噜噜噜66国产日韩在线观看| 精品免费在线| 亚洲欧洲日韩| 免费精品国产的网站免费观看| 国产精品成人一区二区网站软件| 五月天久久777| 超碰在线99| 欧美亚洲网站| 色综合视频一区二区三区日韩| 久久久国产亚洲精品| 麻豆视频一区| 日本成人在线一区| 美女91精品| 精品一区免费| 91青青国产在线观看精品| 欧美精品观看| 日韩在线一区二区| 久久天堂av| 成人国产精选| 国产精品视频首页| 亚洲精品激情| 亚洲欧美日韩国产综合精品二区 | 日本不卡中文字幕| 麻豆精品91| 亚洲精品中文字幕乱码| 欧美日韩视频免费观看| 麻豆精品视频在线观看|