Faker.js 分析¶
目的:在浏览器和 node.js 中生成大量的虚假数据
-
./index.js
Faker.js 入口文件,创建一个 faker 实例
-
./lib/index.js
Faker.js 纲领文件,是模块的集合
-
./lib/faker.js (精华所在)
faker 使用插值实现参数解析和模块方法的执行并返回执行结果
-
./lib/unique.js
引用了 ./vendor/unique.js 其作用是全局唯一性检查
-
./lib/random.js
引用了 ./vendor/merssene.js
梅森旋转算法(Mersenne twister)是一个伪随机数生成算法.
其作用就是在各种情况下生成所需的随机数,并根据随机数返回所需的数据,例如: 数字、数组内元素、单词、姓名、地址、字母、语言、图片网址、十六进制数等等.
-
./lib/helper.js
这个文件的内容比较奇怪,可以看出是列举了一些常用的方法,比如: 字符串替换、字符串打乱、特殊符号替换等等
但是下半部分又实现了一些生活中实用的例子,比如: 会员卡、名片、账户
但我感觉完全可以归并在./libs/random.js 中,毕竟它干的事比这个多了不少
-
./lib/locales.js
导入所有语言
-
./lib/image_providers
图片提供商,用于构造图片网址,如果你要自定义,不妨在这边进行修改
-
./lib/locales > 语言相关,为不同的语言提供特定的处理方式
Faker.js 为我们提供了丰富的常用案例,简单归纳如下:
-
./libs/name.js
随机名字,包括: 姓氏、名字、前缀、后缀、性别、职业、职业描述、职业类型,等等
-
./lib/address.js
随机地址,包括: 邮编、城市、街道、国家、国家代码、洲(省)、纬度、经度、方位、gps 坐标,等等
-
./lib/company.js
随机公司相关的数据
-
./lib/finance.js
随机金融相关的数据
-
./lib/image.js
随机图片,构造图片网址
-
./lib/lorem.js
随机句子、段落等
-
./lib/hacker.js
这个文件名字很怪,乍看以为是黑客相关的,其实是它的内容是词性,包括: 缩写、形容词、名词、动词、短语
-
./lib/internet.js
随机互联网专用的一些技术性的东西,例如: 邮箱、IP、域名、网址、用户代理、终端颜色代码、mac 地址、密码,等等 PS:打开这个文件让我的 vscode 崩溃了,可能插件装多了,有一个突然犯抽导致 CPU 占用居高不下
-
./lib/database.js
随机数据库相关的数据
-
./lib/phone_number.js
随机电话(手机)号码
-
./lib/date.js
随机日期,可以是过去的、将来的、最近的、即将到来的某一段时间,或者某个月份、第几周,等等
-
./lib/commerce.js
随机商业相关的数据,如:部门、产品、价格,等等
-
./lib/system.js
随机系统相关的数据,如:文件名、文件类型、文件路径,等等
-
./lib/git.js
随机 git 相关的数据,如:分支、提交格式、提交的 Sha 值,等等
-
./lib/vehicle.js > 随机交通相关的数据,如:汽车品牌、车型、制造商、汽油型号、外观颜色,等等