<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          faker.js 登 GitHub 趨勢(shì)榜標(biāo)星 27.1k,可大批量生成假數(shù)據(jù)!

          共 3089字,需瀏覽 7分鐘

           ·

          2020-11-18 02:22

          整理 | 夕顏
          圖源 | 視覺中國
          出品 |?CSDN(ID:CSDNnews)

          近日,GitHub上一個(gè)生成假數(shù)據(jù)的項(xiàng)目faker.js火了,攀升Trendinging榜單第二,標(biāo)星目前已超過27.1k。只需要簡(jiǎn)單幾步操作,就可以在瀏覽器和node.js中生成大量假數(shù)據(jù)。

          ? ? ? ?

          據(jù)了解,這已經(jīng)不是一個(gè)新項(xiàng)目了,2017年就已經(jīng)由一名叫Marak Squires的開源愛好者創(chuàng)建,他自1999年以來就在寫JavaScript產(chǎn)品代碼,2009年開始寫Node.js。除了faker.js之外,他還參與了100多個(gè)NPM開源項(xiàng)目,包括在GitHub上同樣受歡迎的獨(dú)立的功能服務(wù)器項(xiàng)目microcule、微服務(wù)平臺(tái)hook.io等。

          ?

          由于在mock數(shù)據(jù)方面非常好用,faker.js一經(jīng)推出就受到了很多應(yīng)用開發(fā)者的歡迎。如今faker.js再次出現(xiàn)在我們的眼前,那就來回顧一下這個(gè)好用的工具吧,也許在創(chuàng)建數(shù)據(jù)庫用例數(shù)據(jù)時(shí),它能幫上忙。

          ?


          1. 姓名、家庭住址、車輛信息一鍵生成

          ?

          按照慣例,先放上項(xiàng)目的GitHub地址:https://github.com/marak/faker.js/

          ?

          faker.js是個(gè)很棒的nede模塊,用來mock數(shù)據(jù)。包含一個(gè)超級(jí)有用的生成器方法Faker.fake,用于胡須字符串格式與faker API組合。

          ?

          比如:

          console.log(faker.fake("{{name.lastName}{{name.firstName{{name.suffix}}"));// outputs: "Marks, Dean Sr."


          這個(gè)操作可以將name.lastName(),name.firstName()和name.suffix()的值插入格式字符串。

          ?

          先看一下demo,可以看到,只要點(diǎn)擊“生成新的”,就可以生成關(guān)于“這個(gè)人”的大量信息,包括姓名、出生日期、家庭住址、國際、電話、郵箱和密碼、財(cái)務(wù)信息,甚至照片,等等。但這個(gè)人實(shí)際上是并不存在的!

          ?

          ?? ? ? ? ? ? ? ? ? ? ?

          ? ? ? ? ? ? ? ? ? ? ? ? ? ?

          有了fake圖像、fake人臉、fake視頻,至此faker.js好像又給了Fake游戲一個(gè)新思路,原來信息數(shù)據(jù)也能夠大量生成!

          ?

          看起來很神奇,你是不是也蠢蠢欲動(dòng)想玩一下?實(shí)際上,創(chuàng)建一個(gè)faker.js操作并不復(fù)雜,感興趣的朋友不妨參考GitHub開源代碼動(dòng)手試一試。

          ?


          2. 創(chuàng)建faker.js的方法

          ?

          • 瀏覽器

          ?

          Faker.js的好處之一,是不僅可以使用在服務(wù)器端的JavaScript,還可以應(yīng)用在瀏覽器端的JavaScript,代碼如下:

          <script?src?=?"faker.js"?type?=?"text/javascript">script><script>var?randomName?=?faker.name.findName();?//?Caitlyn?Kerlukevar?randomEmail?=?faker.internet.email();?//[email protected]var?randomCard?=?faker.helpers.createCard();?//?random?contact?card?containing?many?propertiesscript>


          • Node.js

          var?faker?=?require('faker');var?randomName?=?faker.name.findName();?//?Rowan?Nikolausvar?randomEmail?=?faker.internet.email();?//[email protected]var?randomCard?=?faker.helpers.createCard();?//?random?contact?card?containing?many?properties
          • API


          Faker.js有自己的API,并且功能非常豐富。


            • JSDoc API Browser

          http://marak.github.io/faker.js/

            • 聲明接口

              • 地址

                • 郵政編碼

                • 州郵政編碼

                • 城市前綴

                • 城市后綴

                • 街道名稱

                • 街道地址

                • 街道后綴

                • 街道前綴

                • 其他地址

                • 國家

                • 國家代碼

                • 州的縮寫

                • 緯度

                • 經(jīng)度

                • 方向

                • 基數(shù)方向

                • 順序方向

                • 附近的GPS坐標(biāo)

                • 時(shí)區(qū)

              • 商業(yè)

                • 顏色

                • 部門

                • 產(chǎn)品名稱

                • 價(jià)錢

                • 產(chǎn)品形容詞

                • 產(chǎn)品材質(zhì)

                • 產(chǎn)品

                • 產(chǎn)品描述

          ?

          以及公司、數(shù)據(jù)庫、日期、財(cái)務(wù)狀況、git、hacker、helper、圖像、網(wǎng)絡(luò)、音樂、姓名等API接口,每個(gè)項(xiàng)目下還有子項(xiàng)目:

          ? ? ? ? ? ? ? ? ? ? ?? ? ? ?

          ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

          用Faker.js可以很方便地mock數(shù)據(jù),只需要添加nmp依賴就可以了。

          ?

          另外,faker.js是支持多種語言的,默認(rèn)設(shè)置語言是英語,但可以自己設(shè)置,方法也很簡(jiǎn)單:

          //?sets?locale?to?defaker.locale?=?"de";


          • az

          • ar

          • cz

          • de

          • de_AT

          • de_CH

          • en

          • en_AU

          • en_AU_ocker

          • en_BORK

          • en_CA

          • en_GB

          • en_IE

          • en_IND

          • en_US

          • en_ZA

          • es

          • es_MX

          • fa

          ...

          • 本地化包


          faker.js支持語言環(huán)境的增量加載。

          ?

          默認(rèn)情況下,要求faker包括所有語言環(huán)境數(shù)據(jù)。

          ?

          在生產(chǎn)環(huán)境中,你可能只想用一組特定語言環(huán)境的數(shù)據(jù):

          ?

          //?loads?only?de?localevar?faker?=?require('faker/locale/de');


          • 設(shè)置隨機(jī)種子

          ?

          如果想要一致的結(jié)果,你可以自己設(shè)置種子:

          faker.seed(123);var?firstRandom?=?faker.random.number();//?Setting?the?seed?again?resets?the?sequence.faker.seed(123);var secondRandom = faker.random.number();console.log(firstRandom === secondRando

          你可以使用gulp進(jìn)行自動(dòng)化創(chuàng)建過程。每個(gè)構(gòu)建操作都是一個(gè)單獨(dú)的任務(wù),可以獨(dú)立運(yùn)行。

          ?

          瀏覽器綁定


          npm run browser

          創(chuàng)建JSDocs


          JSDOC?v3 HTML API documentation


          npm run jsdoc

          創(chuàng)建ReadMe


          faker.js的ReadMe.md文件是自動(dòng)生成的,不能直接修改。如果要修改,在./build/src/docs.md中進(jìn)行對(duì)ReadMe.md的所有更新,再運(yùn)行腳本。


          npm run readme

          項(xiàng)目發(fā)起人表示,這個(gè)項(xiàng)目一般來說每月會(huì)進(jìn)行一次或大或小的版本更新,并按緊要程度盡快修復(fù)bug,對(duì)項(xiàng)目感興趣的人,可以持續(xù)關(guān)注下代碼更新:https://github.com/marak/faker.js/

          ?

          最后,用這種方法可以生成大量的假數(shù)據(jù),雖然項(xiàng)目發(fā)起人稱,Node.js主要是一些組織和個(gè)人用于生產(chǎn)環(huán)境設(shè)置,但為了安全起見,還是要在此提醒一句并聲明,本文僅用于技術(shù)交流,朋友們且看且珍惜~


          有道無術(shù),術(shù)可成;有術(shù)無道,止于術(shù)

          歡迎大家關(guān)注Java之道公眾號(hào)


          好文章,我在看??

          瀏覽 53
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  一区性感在线观看 | 伊人婷婷色五月色婷婷区 | 欧美在线观看视频一区 | 精品视频免费在线观看 | 好大好爽视频 |