Skip to content

YAML 转 JSON 转换器

粘贴 YAML 即时获得 JSON,浏览器端实时转换。支持 K8s 清单、OpenAPI 规范、Helm values 和 Ansible playbook,完整展开锚点/别名,100% 隐私保护,数据不离开设备。

无追踪 浏览器中运行 免费
选项 · 2 空格
缩进
0 字符
JSON 输出
0
已审核 YAML 1.2 规范合规性、锚点/别名展开以及多文档处理正确性 — Go Tools 工程团队 · 2026年5月4日

什么是 JSON?

JSON(JavaScript Object Notation)是一种轻量级、基于文本的数据交换格式,标准化为 RFC 8259 和 ECMA-404。它支持六种数据类型 — 字符串、数字、布尔值、null、数组和对象 — 语法严格简洁,几乎所有编程语言、API 和工具链都能原生解析。YAML 是人工编写配置文件(Kubernetes 清单、GitHub Actions、Ansible playbook、Helm values)的首选格式,而 JSON 是 API、自动化脚本和编程式数据处理的通用机器可读格式。

因此,将 YAML 转换为 JSON 是 DevOps 和后端开发中最常见的任务之一 — 你有 YAML 配置文件,但需要 JSON 来输入 REST API、用 jq 查询或通过 JavaScript 工具处理。

与典型的在线转换器相比,本工具有四个重要差异点:

**1. 多文档 YAML 处理。** YAML 支持在单个流中包含多个文档,以 ---(文档起始标记)分隔。许多真实 YAML 文件(包括部分 Kubernetes 清单和 Ansible playbook)包含多个文档。本工具使用 eemeli/yaml 库的 parseAllDocuments,配合 { version: '1.2', merge: true } 选项,返回第一个文档的 JSON,并清晰说明取用了哪个文档。如需所有文档,请按 --- 拆分后逐段转换。

**2. 锚点和别名展开。** YAML 锚点(&name)和别名(*name)允许复用数据块 — 这是 JSON 没有等价概念的强大 YAML 特性。本工具完全展开所有锚点和别名(包括合并键:<<: *anchor),使 JSON 输出包含完整的自包含数据,无任何引用。这始终是正确的转换方式,因为 JSON 没有引用语法。展开由 eemeli/yaml 库安全处理,包含循环引用保护。了解反向转换,请访问 JSON 转 YAML 转换器

**3. 注释丢失 — 透明说明。** YAML 支持 # 注释,Kubernetes 清单、Helm values 和 Ansible playbook 中常用注释来记录意图。JSON 没有注释语法,因此注释在转换时会永久丢失。这不是缺陷,而是格式间的根本差异。本工具对此明确说明,让你了解预期行为。如需保留注释信息,请将其编码为 JSON 字段(_comment 键或专用 metadata 对象),或将 YAML 作为权威来源保留。详见我们的 YAML Norway 问题与 JSON-YAML 差异详解

**4. 100% 浏览器端隐私保护。** 你的 YAML 数据(通常包含 Kubernetes 密钥、数据库凭证、带密码的 Helm values 以及内部服务配置)永远不会离开浏览器。数据不会发送到任何服务器。你可以通过浏览器的「网络」标签验证这一点。转换为 JSON 后,可以在使用前通过 JSON 格式化工具验证和格式化结果。

YAML 的丰富性(注释、锚点、多文档支持、块标量)使其非常适合人工编写的配置文件,可读性和文档记录至关重要。JSON 的严格性和通用性使其在机器为主要使用者时是更好的选择。本转换器连接两个世界:以 YAML 保存配置以便人工维护,在需要机器可读的交换格式时转换为 JSON。

// Convert YAML to JSON in Node.js using the eemeli/yaml library
import { parseAllDocuments } from 'yaml';

const yamlString = `apiVersion: apps/v1
kind: Deployment`;

// parseAllDocuments handles multi-document YAML (--- separator)
// version: '1.2' ensures yes/no are strings, not booleans
// merge: true expands anchor/alias merge keys (<<: *anchor)
const docs = parseAllDocuments(yamlString, { version: '1.2', merge: true });

// Take the first document (skip additional --- blocks)
const json = JSON.stringify(docs[0].toJSON(), null, 2);

console.log(json);
// {
//   "apiVersion": "apps/v1",
//   "kind": "Deployment"
// }

核心功能

实时转换

输入或粘贴 YAML 时,JSON 输出即时更新 — 无需点击「转换」按钮。大型输入(>200KB)自动切换为手动模式以保持浏览器响应。

2 或 4 空格缩进

在 2 空格和 4 空格缩进之间切换,用于 JSON 输出。2 空格是大多数工具和 API 的标准格式;4 空格符合部分风格指南和编辑器默认设置。

多文档支持

支持包含多个 --- 分隔文档的 YAML 流,将第一个文档转换为 JSON 并返回。适用于 Kubernetes 多资源文件和 Ansible playbook。

锚点和别名展开

完全展开 YAML 锚点(&name)和别名(*name),包括合并键(<<: *anchor)。JSON 输出包含完整的去引用数据,没有任何引用 — 这是正确行为,因为 JSON 没有等价概念。

100% 浏览器端隐私

所有转换均在浏览器中使用 JavaScript 本地运行。你的 YAML 数据(包括密钥、凭证和生产配置)不会发送到任何服务器,不会被记录,也不会被存储。

支持 K8s、Compose、Helm 和 OpenAPI 文件

针对真实 DevOps 场景优化:Kubernetes 清单、Docker Compose 栈、Helm chart values、GitHub Actions 工作流、OpenAPI 规范和 Ansible playbook — 每种场景均附有示例。

示例

Kubernetes Manifest

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
  namespace: production
  labels:
    app: my-app
    version: 1.0.0
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
        - name: my-app
          image: my-app:1.0.0
          ports:
            - containerPort: 8080
          resources:
            requests:
              memory: 64Mi
              cpu: 250m
            limits:
              memory: 128Mi
              cpu: 500m

将 Kubernetes Deployment 清单从 YAML 转换为 JSON — 适用于通过 jq 查询、发送到 Kubernetes API 或输入 Terraform 和 CI/CD 流水线

Docker Compose

version: '3.9'
services:
  web:
    image: nginx:1.25-alpine
    ports:
      - '80:80'
      - '443:443'
    environment:
      NGINX_HOST: example.com
      NGINX_PORT: '80'
    depends_on:
      - db
    restart: unless-stopped
  db:
    image: postgres:16-alpine
    environment:
      POSTGRES_DB: mydb
      POSTGRES_USER: admin
      POSTGRES_PASSWORD: secret
    volumes:
      - pgdata:/var/lib/postgresql/data
volumes:
  pgdata: {}

将 Docker Compose YAML 转换为 JSON,用于编程操作、输入自动化脚本或通过 JavaScript 工具处理

GitHub Actions 工作流

name: CI
on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: pnpm
      - name: Install dependencies
        run: pnpm install --frozen-lockfile
      - name: Run tests
        run: pnpm test

将 GitHub Actions 工作流 YAML 解析为 JSON,以查询特定字段、验证结构或与接受 JSON 的 API 集成

OpenAPI 规范

openapi: 3.0.3
info:
  title: User API
  version: 1.0.0
  description: Manage application users
paths:
  /users:
    get:
      summary: List users
      operationId: listUsers
      parameters:
        - name: limit
          in: query
          schema:
            type: integer
            default: 20
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
  /users/{id}:
    get:
      summary: Get user
      operationId: getUser
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Success
components:
  schemas:
    User:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        email:
          type: string
          format: email

将 OpenAPI 3.0 规范从 YAML 转换为 JSON,用于客户端代码生成器、API 测试工具或编程式 schema 检查

Helm values.yaml

replicaCount: 3
image:
  repository: my-app
  tag: 1.0.0
  pullPolicy: IfNotPresent
service:
  type: ClusterIP
  port: 80
ingress:
  enabled: true
  className: nginx
  hosts:
    - host: my-app.example.com
      paths:
        - path: /
          pathType: Prefix
resources:
  requests:
    memory: 64Mi
    cpu: 250m
  limits:
    memory: 128Mi
    cpu: 500m
autoscaling:
  enabled: false
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 80

将 Helm chart 的 values.yaml 转换为 JSON,用于分析、生成报告或输入到期望 JSON 配置的工具

Ansible Playbook

- name: Configure web servers
  hosts: webservers
  become: true
  vars:
    http_port: 80
    max_clients: 200
  tasks:
    - name: Ensure nginx is installed
      ansible.builtin.package:
        name: nginx
        state: present
    - name: Start nginx service
      ansible.builtin.service:
        name: nginx
        state: started
        enabled: true
    - name: Copy nginx config
      ansible.builtin.template:
        src: nginx.conf.j2
        dest: /etc/nginx/nginx.conf
        owner: root
        group: root
        mode: '0644'
      notify:
        - Restart nginx
  handlers:
    - name: Restart nginx
      ansible.builtin.service:
        name: nginx
        state: restarted

将 Ansible playbook YAML 解析为 JSON,用于检查任务结构、审计配置或与报告流水线集成

使用方法

  1. 1

    粘贴 YAML 数据

    在上方输入框中输入或粘贴 YAML 数据。也可以点击「加载示例」试用 Kubernetes Deployment、Docker Compose 文件或 Helm values.yaml 等示例。

  2. 2

    查看实时 JSON 输出

    JSON 会即时显示在输出面板中。调整选项(缩进 2 或 4 空格)以匹配目标工具的要求。

  3. 3

    复制或下载

    点击「复制」将 JSON 复制到剪贴板,或点击「下载」将其保存为 .json 文件,可直接用于 jq、API 调用或任何下游工具。

常见 YAML 转换问题

制表符缩进

YAML 规范禁止使用制表符缩进 — 只允许使用空格。如果 YAML 是在使用制表符的编辑器中编写或从中复制的,解析器将抛出错误。请将所有制表符缩进替换为空格(每级 2 或 4 空格)。

✗ 错误
services:
	web:
		image: nginx:1.25-alpine
✓ 正确
services:
  web:
    image: nginx:1.25-alpine

缩进不一致

YAML 使用一致的缩进来定义嵌套关系。在同一块中混用不同数量的空格(例如一级 2 空格,另一级 3 空格)会导致解析错误。整个文档中每一级必须保持相同的空格数缩进。

✗ 错误
metadata:
  name: my-app
   namespace: production
✓ 正确
metadata:
  name: my-app
  namespace: production

未加引号的特殊字符

冒号(:)、井号(#)、&、*、{、}、[、]、|、>、! 和 @ 在 YAML 中具有特殊含义。在值中未加引号使用它们可能导致解析错误或意外行为。请用单引号或双引号包裹包含这些字符的值。

✗ 错误
url: http://example.com:8080/api
tag: #latest
✓ 正确
url: 'http://example.com:8080/api'
tag: '#latest'

锚点循环引用

YAML 技术上允许锚点引用自身(循环引用),虽然实践中罕见。循环锚点会导致解析器进入无限展开循环。eemeli/yaml 库会检测并抛出循环锚点错误,而不会卡死。

✗ 错误
# Circular anchor (rare but possible)
base: &base
  parent: *base
✓ 正确
# Use explicit fields instead of circular references
base:
  parent: null

多文档混淆

含有多个 --- 分隔符的 YAML 文件包含多个文档。本工具只返回第一个文档的 JSON。如果你期望获得后续文档(第二或第三个 --- 之后)的数据,它不会出现在输出中。如需所有文档,请按 --- 拆分 YAML 并逐段转换。

✗ 错误
# Only the first document is converted
apiVersion: v1
kind: ConfigMap
---
apiVersion: v1
kind: Secret
✓ 正确
# Convert each document separately
apiVersion: v1
kind: ConfigMap

注释丢失

YAML 支持 # 注释,但 JSON 不支持。所有 YAML 注释在转换时都会永久丢失 — 这是格式间的根本差异,而非工具限制。如需在 JSON 中保留注释信息,请将其编码为专用字段,如 _comment 键或 metadata 对象。

✗ 错误
# This comment will be lost
replicas: 3 # scale this up for production
✓ 正确
replicas: 3
_comment: scale this up for production

常见使用场景

Kubernetes 清单分析
将 Kubernetes YAML 清单转换为 JSON,用于 jq 查询、发送到 Kubernetes REST API、在 Terraform 数据源中处理,或输入到期望 JSON 的 CI/CD 流水线。
Docker Compose 转 JavaScript 工具
将 Docker Compose YAML 解析为 JSON,提取服务定义、镜像名、端口映射和环境变量,用于自动化脚本、依赖图或 Node.js 工具。
GitHub Actions API 集成
将 GitHub Actions 工作流 YAML 转换为 JSON,以编程方式验证结构、提取 job 和 step 定义,或与接受 JSON 工作流规范的 CI/CD API 集成。
OpenAPI 转客户端代码生成
许多代码生成器(openapi-generator、swagger-codegen、oazapfts)支持两种格式的 OpenAPI 规范。当工具明确要求 JSON 输入或需要用 JSON Schema 验证器检查时,将 YAML 规范转换为 JSON。
Helm Values 分析
将 Helm chart 的 values.yaml 转换为 JSON,用于生成报告、跨环境比较 values、输入策略执行工具,或通过期望 JSON 配置的自动化处理。
迁移配置到 JSON 工具
将应用配置从 YAML(基础设施工具中常见)迁移到 JSON,用于 JavaScript 环境、REST API、AWS AppConfig、Azure App Configuration 或任何以 JSON 存储配置的系统。

技术细节

通过 parseAllDocuments(merge:true)遵循 YAML 1.2 规范
YAML 使用 eemeli/yaml 库(v2.8+,CVE 安全)通过 parseAllDocuments 配合 { version: '1.2', merge: true } 解析。YAML 1.2 schema 确保 yes 和 no 等裸字符串被视为字符串(而非布尔值),符合当前 YAML 规范。merge: true 选项完全展开锚点/别名合并键(<<: *anchor),使 JSON 输出包含完整的去引用数据。多文档 YAML(--- 分隔)返回第一个文档。
通过库进行锚点和别名展开
eemeli/yaml 库安全处理锚点(&name)和别名(*name)展开,包括循环引用检测。所有被引用的数据块(包括合并键展开)都完全内联到 JSON 输出中。这是正确的转换方式,因为 JSON 没有引用或锚点概念。库的安全展开可防止因格式错误的 YAML 导致的无限循环。
100% 浏览器端 — 无上传,无服务器
所有处理完全在浏览器的 JavaScript 引擎中完成。数据在任何时候都不会通过网络传输。超过 200KB 的输入会自动从实时模式切换到手动模式(需要显式点击「转换」),以保持浏览器响应并防止繁重序列化时主线程阻塞。

最佳实践

使用 YAML 1.2 兼容语法以获得干净的转换结果
使用 YAML 1.2 惯例编写 YAML — 明确为 yes、no、on、off、y 和 n 字符串值加引号(例如 enabled: 'yes')以避免歧义。本工具使用 YAML 1.2 schema 解析(这些是字符串),但流水线中的旧工具可能使用 YAML 1.1(它们会被视为布尔值)。在源 YAML 中明确加引号是对所有解析器最安全的做法。
在 YAML 中为大数字加引号以保留精度
JavaScript 无法精确表示大于 2^53 - 1(9007199254740991)的整数。Kubernetes 的 resourceVersion 和 uid 等字段在服务器端是 int64,可能超过此限制。在 YAML 源文件中为这些值加引号(resourceVersion: '9007199254740993'),使解析器将其视为字符串,从而在 JSON 输出中以字符串形式精确保留。
使用前验证 JSON 输出
将 YAML 转换为 JSON 后,在发送到 API、存储或编程处理之前先验证结果。使用 JSON 格式化工具确认结构正确。这对 Kubernetes API 调用、OpenAPI 规范以及任何 JSON Schema 验证的载荷尤为重要,结构错误会在 API 层而非转换步骤产生令人困惑的拒绝信息。
转换前分离多文档 YAML
如果 YAML 文件包含多个 --- 分隔文档且需要全部转为 JSON,请先按 --- 拆分文件后逐个转换。本工具只取第一个文档。简单方法:在编辑器中按 '\n---\n' 拆分,或使用 awk,然后逐段粘贴。
使用 jq 处理下游 JSON
从 YAML 获得 JSON 后,jq 是在命令行中查询和转换它的最快方式。结合本工具使用 jq:在线转换 YAML,粘贴 JSON,然后使用 jq '.spec.replicas' 或 jq '.services | keys' 精确提取所需内容。如需批量处理多个文件,直接使用带 -o json 参数的 yq CLI。

常见问题

如何在线将 YAML 转换为 JSON?
将 YAML 粘贴到上方输入框中,工具会立即在浏览器中将其转换为 JSON,无需点击任何按钮。你可以在「选项」面板中调整输出缩进(2 或 4 空格)。JSON 显示在输出区域后,点击「复制」即可复制到剪贴板,或点击「下载」保存为 .json 文件。所有操作均在本地运行 — 数据永不离开你的设备。
本工具如何处理多文档 YAML(--- 分隔符)?
YAML 支持在单个流中包含多个文档,以 ---(文档起始标记)分隔。粘贴多文档 YAML 时,本工具使用 eemeli/yaml 库的 parseAllDocuments 并返回第一个文档的 JSON。第一个文档之后的其他文档会被静默忽略。如需处理所有文档,请按 --- 拆分 YAML 并逐段转换。
YAML 锚点和别名(&anchor 和 *alias)如何处理?
YAML 锚点(&name)定义可复用的块,别名(*name)引用它。本工具在解析时会完全展开所有锚点和别名,因此输出的 JSON 包含完整的去引用数据。例如,若 YAML 锚点定义了一组资源限制,多个服务通过合并键(<<: *anchor)引用它,JSON 输出会显式内联每个服务的完整字段。这是 JSON 的正确行为,因为 JSON 不存在引用概念。eemeli/yaml 库能安全处理锚点/别名展开,包括循环引用检测。
YAML 注释会保留在 JSON 输出中吗?
不会。JSON 不支持任何形式的注释 — 无论是 #、// 还是 /* */。将 YAML 转换为 JSON 时,所有注释都会永久丢失。这是格式间的根本差异,而非本工具的限制。如需保留注释信息,可将其编码为专用 JSON 字段(如 _comment 键)再进行转换,或将含注释的 YAML 源文件保留为权威版本。
如何使用本工具处理 Kubernetes 清单?
将 Kubernetes YAML 清单(来自 .yaml 文件、kubectl get -o yaml 输出或 Helm 模板)粘贴到输入框中。JSON 输出可以用 jq 查询、直接发送到 Kubernetes REST API、在 Terraform 数据源中使用,或由任何期望 JSON 的工具处理。常见工作流是将 YAML 清单转为 JSON 后提取特定字段 — 例如在 JSON 输出上执行 jq '.spec.replicas' 来验证跨 Deployment 的副本数。上方的 K8s Deployment 示例展示了可加载并修改的完整清单。
如何使用本工具处理 Docker Compose 文件?
Docker Compose 文件按惯例使用 YAML 格式。将其转换为 JSON 后,可以通过 JavaScript 工具、jq 脚本或任何读取 JSON 的系统来处理服务定义。常见用途包括提取所有镜像名以构建依赖列表、从 compose 文件生成报告,或将 Compose 配置输入接受 JSON 的 CI/CD 编排工具。将 compose.yaml 粘贴到输入框中,JSON 输出即刻可用于下游处理。
YAML 1.1 和 YAML 1.2 有何区别?本工具使用哪个版本?
YAML 1.1(旧规范,PyYAML、Ansible、Ruby Psych 和许多 Kubernetes 工具仍在使用)将裸字符串 yes、no、on、off、y 和 n 视为布尔值 true/false。这导致了臭名昭著的 YAML Norway 问题 — ISO 国家代码 'NO' 被解析为 false。YAML 1.2(2009 年发布的当前规范)修复了此问题:所有裸字符串均为字符串,只有 true/false 是布尔值。本工具使用 YAML 1.2 schema 进行解析,这意味着 YAML 输入中的 yes 和 no 在 JSON 输出中会保留为字符串 'yes' 和 'no',而非布尔值 true 和 false。这是正确的现代行为。如果你的 YAML 最初是为 YAML 1.1 解析器编写并依赖 yes/no 作为布尔值,请注意 JSON 输出会将其视为字符串。
YAML 为何禁止制表符缩进?
YAML 规范明确禁止使用制表符(\t)缩进 — 只允许使用空格。这是为了避免不同编辑器对制表符宽度的解释不一致所带来的歧义。如果 YAML 使用制表符缩进(从自动将空格转换为制表符的文本编辑器复制时常见),YAML 解析器将抛出解析错误。修复方法是将所有制表符缩进替换为空格。大多数代码编辑器都有将制表符转换为空格的设置(例如 Vim 的「展开制表符」、VS Code 的「插入空格」)。如果粘贴 YAML 后看到提及「tab」或「indentation」的解析错误,几乎总是这个原因。
将 YAML 转换为 JSON 时,大数字会丢失精度吗?
会的。这是影响所有基于浏览器工具的根本 JavaScript 限制。JavaScript 的 IEEE 754 双精度浮点数只能精确表示 2^53 - 1(9007199254740991)以内的整数。超过此范围的 YAML 数字(如 Kubernetes int64 字段 resourceVersion)在 YAML 解析器将其传递给 JavaScript 的 number 类型时会被静默取整。例如,YAML 值 9007199254740993 在 JSON 输出中会变成 9007199254740992。安全的解决方法是在 YAML 源文件中将大数字加引号(resourceVersion: '9007199254740993'),使解析器将其视为字符串,从而在 JSON 中以字符串形式精确保留。
如何在命令行中将 YAML 转换为 JSON?
最流行的方式是使用 yq(Mike Farah 版本)和 jq。安装 yq:macOS 使用 brew install yq,Linux 从 github.com/mikefarah/yq/releases 下载。然后运行:yq -o json input.yaml 将 YAML 文件转换为 JSON,或 cat input.yaml | yq -o json - 从标准输入管道传入。格式化输出:yq -o json input.yaml | jq . — 通过 jq 对 JSON 进行一致格式化。Python 单行命令:python3 -c "import sys, json, yaml; print(json.dumps(yaml.safe_load(sys.stdin), indent=2))" < input.yaml。多文档 YAML 使用 yq:yq -o json '.[0]' input.yaml 仅提取第一个文档为 JSON。
使用本工具时 YAML 数据会上传到服务器吗?
不会。所有转换完全在浏览器中使用 JavaScript 完成。你的 YAML 数据不会通过网络传输,不会存储在任何服务器上,也不会被记录或分析。这使本工具可以安全地处理 Kubernetes 密钥、数据库凭证、内部 Helm values、配置文件中的 API 密钥以及任何其他敏感基础设施配置。你可以通过浏览器的「网络」标签来验证 — 粘贴 YAML 时不会触发任何请求。
YAML 输入有文件大小限制吗?
没有硬性文件大小限制,但超过 200KB 的大型输入会自动从实时转换切换为手动模式。在手动模式下,会出现「转换」按钮,只有点击时才会执行转换 — 这避免了每次击键时浏览器主线程被阻塞。对于非常大的 YAML 文件(多兆字节),建议使用 yq 等命令行工具以获得更好性能。本工具能高效处理典型的真实负载,如完整的 Kubernetes 命名空间导出、大型 OpenAPI 规范和多服务 Helm chart values 文件。

Base64 解码与编码工具

编码和格式化

免费在线 Base64 解码编码工具。实时转换,支持中文和 Emoji,100% 浏览器端运行,数据不离开设备,无需注册。

JSON 格式化与验证工具

编码和格式化

在浏览器中即时格式化、验证和美化 JSON。免费在线工具,支持语法验证、错误检测、压缩和一键复制,100% 隐私保护。

JSON 转 YAML 转换器

编码和格式化

粘贴 JSON 即时获得 YAML,浏览器端实时转换。支持 Kubernetes、Docker Compose 和 Terraform,提供 2/4 空格缩进、Norway 安全自动引号,100% 隐私保护,数据不离开设备。

URL 编码解码在线工具 — 内置 URL 结构解析

编码和格式化

粘贴 URL 即时编码或解码,实时显示结果。内置 URL 解析器将协议、域名、路径、查询参数拆解为可编辑字段。支持 encodeURI 和 encodeURIComponent 双模式切换,检测双重编码问题。纯浏览器端运行,数据不离开设备。

进制转换器 — 二进制、十六进制、十进制、八进制互转

转换工具

在线免费进制转换工具,支持二进制、八进制、十进制、十六进制及 2-36 任意进制互转。无需注册,数据不离开浏览器,即时获取结果。

在线压缩 JPEG、PNG、WebP 图片 — 免费批量处理

转换工具

免费在线压缩 JPEG、PNG、WebP 图片,体积缩小高达 80%。浏览器本地处理、图片不上传服务器。支持批量压缩 20 张、质量调节、前后对比预览。无需注册。