当前位置:首页 > JavaScript

js 实现format

2026-03-13 17:42:13JavaScript

JavaScript 实现字符串格式化

在 JavaScript 中实现字符串格式化可以通过多种方式完成,以下是几种常见的方法:

使用模板字符串(ES6)

模板字符串提供了一种简洁的字符串插值方式,支持多行字符串和表达式嵌入:

js 实现format

const name = 'Alice';
const age = 25;
const formatted = `Name: ${name}, Age: ${age}`;
console.log(formatted); // "Name: Alice, Age: 25"

使用 String.prototype.replace()

通过正则表达式匹配占位符并替换:

function format(str, values) {
    return str.replace(/{(\w+)}/g, (match, key) => values[key] || match);
}
const result = format('Name: {name}, Age: {age}', { name: 'Bob', age: 30 });
console.log(result); // "Name: Bob, Age: 30"

使用 printf-style 库(如 sprintf-js)

第三方库提供类似 C 语言的格式化功能:

js 实现format

import { sprintf } from 'sprintf-js';
const formatted = sprintf('Name: %s, Age: %d', 'Charlie', 35);
console.log(formatted); // "Name: Charlie, Age: 35"

自定义格式化函数

实现一个支持位置和命名参数的格式化工具:

function format(str, ...args) {
    let i = 0;
    return str.replace(/%s|%d|%\{(\w+)\}/g, (match, key) => {
        if (match === '%s' || match === '%d') return args[i++];
        return args[0][key] || match;
    });
}
console.log(format('%s is %d years old', 'Dave', 40)); // "Dave is 40 years old"
console.log(format('%{name} is %{age} years old', { name: 'Eve', age: 45 })); // "Eve is 45 years old"

日期/数字格式化

对于特定类型的数据,可使用内置 API:

// 数字格式化
const num = 1234.567;
console.log(num.toFixed(2)); // "1234.57"

// 日期格式化
const date = new Date();
console.log(date.toLocaleDateString('en-US')); // "7/21/2023"

选择方法时应考虑浏览器兼容性、性能需求和使用场景。模板字符串是现代开发的首选方案,而库函数适合需要复杂格式化的场景。

标签: jsformat
分享给朋友:

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swipe…

js实现

js实现

实现 JavaScript 功能的方法 在 JavaScript 中实现特定功能通常涉及多个步骤。以下是常见的实现方法: 基础语法和变量声明 使用 let 或 const 声明变量: let co…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…