@ art- suite/ art- core- ts- 检查
方便,强大的工具在运行时检查数据以加快发展.
为什么是这个模块?
运行时间数据检查对于加速开发至关重要,但标准记录方法往往需要代码重写并产生难以读取或再用的产出. 开发者需要将无缝地集成到表达式中的功能记录,对复杂的对象分级进行清洁检查,并且输出可以被复制到其他地方使用.
- 功能记录 : 这个
log函数返回最后一个传递的值,因此可以在不中断代码流的情况下在表达式内部使用 - 清洁物品检查: 用于复杂对象分级的美丽可读输出, 这使得一目了然地理解运行时数据更加容易
- 复制粘贴友好 : 日志输出是合法 JavaScript , 可在其他地方直接使用
- 多种输出格式 : 针对不同用途案例的标准、未引用和格式化检查选项
安装和使用示例( 需要)
用 npm 安装 :
npm install @art-suite/art-core-ts-inspect
基本用途:
import { log, formattedInspect } from "@art-suite/art-core-ts-inspect";
// Functional logging - returns the last value
const result = log("Processing user:", user); // logs and returns user
const processed = processUser(log("Input:", user)); // logs inline, continues processing
// Multiple arguments
log("User ID:", userId, "Profile:", profile); // logs all, returns profile
// Different log levels
log.warn("Warning:", warningMessage); // returns warningMessage
log.error("Error occurred:", error); // returns error
// Unquoted output for cleaner object inspection
log.unquoted("User object:", user); // cleaner, more readable output
// Formatted inspection for complex objects
const formatted = formattedInspect(complexObject);
console.log(formatted);
职能概览
核心日志函数
log(...args)——记录所有参数并返回上一个参数log.warn(...args)– 日志带有控制台.warn并返回最后一个参数log.error(...args)—— 带有控制台. error 的日志并返回最后一个参数log.unquoted(...args)– 日志带有更清洁, 未引用的输出并返回最后一个参数
检查公用事业
formattedInspect(value)——返回任何值的格式化字符串表示符
类型脚本
LogFunction——功能日志接口类型
关键特性
功能编程样式
日志函数是为函数编程模式而设计的,允许您在不中断表达链的情况下检查数据:
// Instead of:
const user = getUser();
console.log("User:", user);
const processed = processUser(user);
// You can do:
const processed = processUser(log("User:", getUser()));
内含表达式日志
这个 log 函数返回最后一个传递给它的值,使其适合内置调试 :
const a = 123;
const b = 345;
return a + log("this is b", b);
// Output: "this is b 345"
// Returns: 468 (123 + 345)
这使得您可以在不调整代码或创建临时变量的情况下添加日志.
清理对象检查
这个 log.unquoted 函数为复杂对象提供更清洁的输出:
const user = {
id: 123,
name: "John Doe",
preferences: {
theme: "dark",
notifications: true,
},
};
log.unquoted("User:", user);
// Output is clean, readable, and copy-paste friendly
复制便捷输出
标准日志输出是有效的JavaScript,可以直接复制和使用:
const data = { foo: "bar", nested: { value: 42 } };
log("Data:", data);
// Output can be copied and pasted directly into code
人类可读检查
这个 log.unquoted 函数去除符号噪声,使输出更能被人读取,在要精确但友好输出的地方适合生产代码:
const user = {
id: 123,
name: "John Doe",
preferences: {
theme: "dark",
notifications: true,
},
};
log.unquoted("User:", user);
// Clean, human-friendly output without excessive quotes and symbols
颜色记录支持
所有记录功能都支持色输出,以提高可读性:
- 标准
log()使用颜色来更好的视觉区分 log.unquoted()提供有色、干净的输出- 在终端环境中自动检测和使用颜色
API 文档参考
关于所有被输出功能及其参数的详细信息,请参见源代码内的TypeScript打字和JSDoc评论.