面粉解释器
解释以字符串格式表示的数据类型.
如何安装
npm install -s @flourish/interpreter
然后说:
import { createInterpreter } from "@flourish/interpreter";
快速使用
使用创建解释器创建解释器 。 然后,您可以立即随结果函数开始解释数组.
var interpreter = createInterpreter();
var interpretations = interpreter(["-787", "1246,83", "203", "1.340.201"]) // Returns array of interpretation objects that match with the array
createInterpreter([interpretation_types])
创建新 interpreter 函数使用可选 interpretation_types 参数. interpretation_types 可以是一组字符串,也可以是单个字符串,每个字符串都与所支持的解释类型匹配。 目前这些类型是"日期","数字"和"弦". 其中前三个有多个子类型. 排列顺序很重要,因为它在启用排序时决定了绑定解释的输出顺序(见 interpreter.sort (见下文)和不通过时通过的所有解释。 例外的是(catch-all)"弦"类型总是出现在阵列的末尾. 若为 interpretation_types 未指定然后默认 ["datetime", "number", "string"] 已使用.
interpreter(input_array, [accessor])
解释 input_array 传入.
若为 accessor 实值 undefined 然后解释器直接作用于数组的每个元素。 若为 accessor 是一个函数,然后是交互器根据调用数组值作为第一个参数和数组索引作为第二个参数的结果行事。 否则,解释者在财产上的行为等于 accessor 每一要素 input_array。 。 。 .
返回一系列解释对象(见下文关于解释对象的一节)。 阵列中的每个物体都经过了解释过程,并且可以作为一种有效的解释来解释数据,因为使用数据解析方法规定了条件 interpreter 函数.
若为 input_array 是空数组或空字符串的数组,则无法进行有用的解释。 在这种情况下,返回的数组将只包含囊括所有字符串类型的对象——如果它是允许的解释类型之一——如果不是,则完全不包含.
interpreter 方法
一种方法 interpreter 函数作为设置器和获取器,取决于是否(非)undefined提供论据。 下文介绍这些方法的功能.
interpreter.nMax([value])
应从 array_of_strings默认为 250,设置为 Infinity 以确保所有非空字符串得到解释.
interpreter.nFailingValues([value])
在解释器失败前应允许的单个失败值的最大数量 。 默认为 0。 。 。 .
interpreter.failureFraction([value])
翻译前允许的失败值的最大分量被视为失败 。 默认为 0.05但是,除非 interpreter.nFailingValues 改为正数,这个值基本上无关紧要,因为一个失败值就足以得出解释器失败的结论.
interpreter.sort([value])
是否为 (true)或不(false)以(递减)失败分数排序输出解释对象。 默认为 true不过,如果两者兼而有之, 分类只会起到实际的作用 nFailingValues 财务报告和审定财务报表 failureFraction 是正数。 包罗万象的"字符串"解释类型从不排序,如果存在,将永远出现在输出阵列中.
解释对象
所有判读对象都包含下列属性/方法:
interpretation.desciption
释法正文述.
interpretation.parse(str)
解析字符串, str,并尝试返回相关类型的值(如果解释器为"数字"类型,例如数字,尽管结果可能是NaN)。 如果 str 不是一个字符串.
interpretation.test(str)
测试字符串是否, str,可被解释为属于正确的子类型。 返回 a布尔。 如果 str 不是一个字符串.
interpretation.type
解释器类型的文本描述 ie"日期时间","数字"或"字符串".
createInterpreter.DATETIME_IDS
日期时子类型 ID 的冻结数组 。 可用于 createInterpreter.getInterpretation。 。 。 .
createInterpreter.NUMBER_IDS
数字子类型的被冻结的 ID 数组 。 可用于 createInterpreter.getInterpretation。 。 。 .
createInterpreter.STRING_IDS
字符串子类型(目前只有单一子类型)的ID被冻结的数组. 可用于 createInterpreter.getInterpretation。 。 。 .
createInterpreter.getInterpretation(id)
得到解释与给定 id。 。 。 .
recognised_formats
参考一份数据类型格式清单,可按以下方式解释: @flourish/interpreter导入 recognised_formats数字 :
import { recognised_formats } from "@flourish/interpreter";
recognised_formats 是包含不同对象的数组的对象 number 财务报告和审定财务报表 datetime 被面粉所识别的数据格式。 你可以这样访问他们:
var recognised_number_formats = recognised_formats.number;
var recognised_datetime_formats = recognised_formats.datetime;
每个阵列都包含有识别数据格式信息的对象.