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

您的位置:首頁技術(shù)文章
文章詳情頁

JavaScript 很少為人所知的玩法

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

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

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

任何能夠用 JavaScript 實現(xiàn)的應(yīng)用,最終都必將用 JavaScript 實現(xiàn)。

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

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

JavaScript Java Python PHP Matlab Arduino Swift

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

Espruino

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

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

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

Star

$ git clone https://github.com/makerdiary/Espruino.git$ cd Espruino# 將 YS-Beacon 連接至 PC$ YS_BEACON=1 RELEASE=1 make flash# 終端跳出一大堆字符,板子上的藍(lán)色燈閃爍,最后一切輕松搞定~...[====================] 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 還有一個配套的開發(fā)工具 Espruino Web IDE ,可以用來編輯代碼、下載程序,甚至可用于圖形化編程。下面是簡單實現(xiàn) LED 閃爍的代碼,有沒有一種似曾相識的感覺:

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

JavaScript 很少為人所知的玩法

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

JerryScript

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

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

IoT.js 是一個使用 JavaScript 編寫的物聯(lián)網(wǎng)應(yīng)用平臺;JerryScript 是一個適用于嵌入式設(shè)備的小型 JavaScript 引擎;而三星開源了 IoT.js 和 JerryScript。

整個內(nèi)部架構(gòu)如下: JavaScript 很少為人所知的玩法

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

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

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

既然已經(jīng)支持 mbed OS 5 了,那事情就好辦多了,可以輕松支援自己開發(fā)的硬件,至于開發(fā)環(huán)境的搭建可以參考 README ,不難實現(xiàn)。

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

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

// 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 文件下載到目標(biāo)板,看看是不是你想要的結(jié)果: JavaScript 很少為人所知的玩法

Blockly

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

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

您的瀏覽器不支持 video 標(biāo)簽。

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

未完待續(xù)

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

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

標(biāo)簽: JavaScript
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美激情麻豆| 9色精品在线| 韩国精品主播一区二区在线观看 | 国产精品高清一区二区| 激情久久中文字幕| 五月婷婷六月综合| 狠狠爱www人成狠狠爱综合网| 久久久精品久久久久久96 | 亚洲激情av| 久久一区二区三区喷水| 99热免费精品| 日本成人一区二区| 亚洲精品乱码日韩| 蜜桃一区二区三区在线观看| 福利一区和二区| 蜜臀久久99精品久久久久久9| 天堂√8在线中文| 日韩毛片一区| 欧美va天堂| 蜜桃久久久久| 国产精品网在线观看| 狠狠干成人综合网| 色爱av综合网| 日韩欧美二区| 日韩国产在线| 欧美成人亚洲| 久久精品免费一区二区三区| 国产午夜精品一区在线观看| 国产亚洲精品久久久久婷婷瑜伽| 日韩在线视频精品| 国产精品极品在线观看| 国产一区91| 日韩成人亚洲| 国产精品白丝一区二区三区| 欧美一级精品| 免费看久久久| 亚洲精品一区二区在线播放∴| 色婷婷狠狠五月综合天色拍| 国产精品地址| 99久久九九| 精品日韩一区| 欧美日韩91| 99精品综合| 精品五月天堂| 青草国产精品| 91久久久久| 成人美女视频| 日本色综合中文字幕| 午夜欧美在线| 日韩精品dvd| 成人黄色av| 日韩高清中文字幕一区| 国产一区二区中文| 久久久久久色| 亚洲综合精品四区| 国内精品99| 久久国产影院| 欧美日韩在线网站| 国产欧美日韩精品一区二区免费| 亚洲精品亚洲人成在线观看| 91嫩草亚洲精品| 久久精品五月| 精品视频在线你懂得| 美日韩一区二区三区| 久久精品99国产精品| 日本强好片久久久久久aaa| 日韩 欧美一区二区三区| 免费人成在线不卡| 一区二区三区国产在线| 日韩av中文字幕一区二区| 国产精品一区二区三区美女| 欧美精品1区| 国产aⅴ精品一区二区三区久久| 日韩一区二区三区精品| 国产精品午夜一区二区三区| 国产精品网址| 99精品视频精品精品视频| 在线综合亚洲| 国产高清久久| 久久亚洲不卡| 欧美精品国产| 国产精品久久久久久久久久齐齐 | 午夜久久av| 日韩美女精品| 日本黄色精品| 视频一区中文| 亚洲免费成人| 久久中文字幕导航| 欧美一区二区性| 国产欧美激情| 蜜桃视频欧美| 日韩成人午夜精品| 黄色精品视频| 午夜一级在线看亚洲| 日韩美女国产精品| 国产精品国产一区| 美女毛片一区二区三区四区| 欧美日韩国产免费观看| 久久在线91| 亚洲免费观看高清完整版在线观| 99热精品久久| 欧美激情视频一区二区三区在线播放| 欧美搞黄网站| 美女视频网站久久| 午夜久久美女| 风间由美中文字幕在线看视频国产欧美| 亚洲欧美日本日韩| 一本大道色婷婷在线| 日韩av影院| 樱桃视频成人在线观看| 午夜久久黄色| 在线手机中文字幕| 亚洲精品黄色| 午夜影院欧美| 今天的高清视频免费播放成人| 欧美在线91| 最新日韩av| 久久一级电影| 欧美三级精品| 国产精品一区二区精品| 蜜桃久久久久久| 欧美网站在线| 日韩欧美另类一区二区| 久久久久久婷| 欧美激情在线精品一区二区三区| 一区二区小说| 日本精品不卡| 日韩不卡免费高清视频| 日韩精品不卡一区二区| 999国产精品999久久久久久| 桃色av一区二区| 亚洲91精品| 成人在线网站| 日韩88av| 日韩在线二区| 久久一级电影| 亚洲综合另类| 亚洲影院天堂中文av色| 日本一区免费网站| 国产精品自拍区| 亚洲制服欧美另类| 欧美精品一二| 老司机精品久久| 日韩三区四区| 免费在线观看一区| 91精品国产乱码久久久久久久| 久久91导航| 激情综合网址| 9色精品在线| 欧美精品导航| av资源新版天堂在线| 亚洲黑丝一区二区| 国产一区日韩一区| 男人操女人的视频在线观看欧美| 日韩一区二区三区精品| 亚洲男人在线| 精品视频自拍| 国产精品视区| 国产精品亚洲四区在线观看| 日韩国产一区二区| 日日夜夜免费精品视频| 久久精品国产网站| 99精品视频在线观看免费播放| 三级一区在线视频先锋| 国产欧美日韩影院| 中文在线中文资源| 日韩在线卡一卡二| 欧美精品成人| 亚洲精品网址| 精品一区视频| 国产aⅴ精品一区二区四区| 欧美不卡高清| 久久99蜜桃| 亚洲色图综合| 色黄视频在线观看| 日韩一二三区在线观看| 亚洲精品.com| 福利在线一区| 黄色精品视频| 国产精品主播| 水蜜桃久久夜色精品一区的特点| 国产欧美丝祙| 好吊一区二区三区| 国产日韩在线观看视频| 亚洲一级淫片| 国产精品亚洲人成在99www| 免费观看在线色综合| 中文字幕在线视频网站| 麻豆国产欧美日韩综合精品二区| 亚州精品视频| 婷婷亚洲成人| 亚欧成人精品| 日韩在线观看中文字幕| 女主播福利一区| 久久久免费人体| 动漫av一区| 精品国产黄a∨片高清在线| 美女国产精品久久久| 日本视频一区二区| 亚洲精品影院在线观看|