mask 函数通过 maskType 参数指定打码方式,有三种选择:
- 省略 maskType(默认字符打码):将敏感值按字符替换为 maskChar(默认 ),可通过 keepPrefix、keepSuffix 指定保留前后字符数,如手机号保留前三后四:13900004567 → 139**4567;
- placeholder(占位符):将敏感值整体替换为 [TYPE_MASKED] 形式的占位符,如 [PHONE_MASKED],信息完全不可恢复,适合不需要人工核对的场景;
- anchor(锚点打码):配合 maskBeforeChar 参数使用,如设为 @ 时替换邮箱 @ 前的用户名部分,保留 @ 及域名。
keepPrefix、keepSuffix 只在默认字符打码时生效,anchor 使用锚点参数、placeholder 使用占位符。选择思路:需要人工核对号码的业务可保留部分数字(如手机号前三后四便于确认归属);不需要核对的应用占位符;邮箱这类有明确分隔符的适合 anchor。例如车主实名认证日志中,手机号可配置 keepPrefix=3、keepSuffix=4,身份证号则用 placeholder 完全替换。




