目录
使用方法
首页 web前端 js教程 js中自定义format格式化输出实例

js中自定义format格式化输出实例

Mar 10, 2018 pm 03:28 PM
format javascript 格式化

在使用js的时候,经常要进行字符串的拼接,一但使用+号进行字符串拼接的时候,基本是各种问题,又不好维护,有没有更好的方法地其进行格式化输出呢?答案肯定是有的,如果你使用nodejs,它已经自带的,如果你还在使用纯原生js,那不好意思了。

使用方法

String对象添加format方法

String.prototype.format = function(opts) {//use 'my name is ${name}'.format({name:'lake'})
    var data = Array.prototype.slice.call(arguments, 0),
        toString = Object.prototype.toString;    if (data.length) {
        data = data.length == 1 ?
            (opts !== null && (/\[object Array\]|\[object Object\]/.test(toString.call(opts))) ? opts : data) : data;        return this.replace(/\$\{(.+?)\}/g, function(match, key) {
            var replacer = data[key];            // chrome 下 typeof /a/ == 'function'

            if ('[object Function]' == toString.call(replacer)) {
                replacer = replacer(key);
            }            return ('undefined' == typeof replacer ? '' : replacer);
        });
    }    return this;
}
登录后复制
登录后复制

使用方法

console.log('my name is ${name}.'.format({name:'lake'}))
登录后复制
登录后复制
  • 1

输出结果

my name is lake.
登录后复制
登录后复制

权声明:多一份转载,多一份环保 http://blog.csdn.net/dounine/article/details/78443487

在使用js的时候,经常要进行字符串的拼接,一但使用+号进行字符串拼接的时候,基本是各种问题,又不好维护,有没有更好的方法地其进行格式化输出呢?答案肯定是有的,如果你使用nodejs,它已经自带的,如果你还在使用纯原生js,那不好意思了。

使用方法

String对象添加format方法

String.prototype.format = function(opts) {//use 'my name is ${name}'.format({name:'lake'})
    var data = Array.prototype.slice.call(arguments, 0),
        toString = Object.prototype.toString;    if (data.length) {
        data = data.length == 1 ?
            (opts !== null && (/\[object Array\]|\[object Object\]/.test(toString.call(opts))) ? opts : data) : data;        return this.replace(/\$\{(.+?)\}/g, function(match, key) {
            var replacer = data[key];            // chrome 下 typeof /a/ == 'function'

            if ('[object Function]' == toString.call(replacer)) {
                replacer = replacer(key);
            }            return ('undefined' == typeof replacer ? '' : replacer);
        });
    }    return this;
}
登录后复制
登录后复制

使用方法

console.log('my name is ${name}.'.format({name:'lake'}))
登录后复制
登录后复制

输出结果

my name is lake.
登录后复制
登录后复制

相关推荐:

php阅读number_format函数的源码分享

推荐10篇关于format函数的课程

详解str.format()的基本语法和高级用法

以上是js中自定义format格式化输出实例的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

dos命令怎么格式化c盘 dos命令怎么格式化c盘 Feb 19, 2024 pm 04:23 PM

DOS命令是一种在Windows操作系统中使用的命令行工具,它可以用于执行各种系统管理任务和操作。其中一个常用的任务是格式化硬盘驱动器,包括C盘。格式化C盘是一个比较危险的操作,因为它将会清除C盘上的所有数据,并将文件系统重新初始化。在执行这个操作之前,确保你已经备份了重要的文件,并且清楚地了解格式化操作对你的计算机会产生的影响。下面是在DOS命令行中格式化

简单有效的步骤来解决0x80070057错误 简单有效的步骤来解决0x80070057错误 Dec 27, 2023 am 08:38 AM

如何解决0x80070057错误:简单有效的方法与步骤引言:在使用计算机的过程中,我们有时会遇到各种各样的错误代码。其中,0x80070057是一个非常常见的错误代码,它通常与Windows操作系统相关。这个错误代码可能出现在不同的情况下,例如在安装或更新操作系统、备份或还原文件以及格式化驱动器时等。尽管这个错误代码很令人沮丧,但它并不是无法解决的。本文将介

手机格式化恢复方法大揭秘(手机故障?别急) 手机格式化恢复方法大揭秘(手机故障?别急) May 04, 2024 pm 06:01 PM

现如今,无法开机等,卡顿,我们难免会遇到一些问题,比如系统崩溃、但在使用过程中、手机已成为我们生活中不可或缺的一部分。我们往往束手无策、而有时、对于这些问题的解决方法。帮助你解决手机故障,本文将为大家介绍一些手机格式化恢复的方法、让手机重新恢复正常运行。备份数据——保护重要信息安全通讯录等,如照片、联系人、以免在格式化过程中丢失、在进行手机格式化之前、首先要考虑的是备份手机上的重要数据和文件。确保数据的安全性、或者选择将文件传输至云存储服务中,可以通过连接电脑进行备份。使用系统自带恢复功能——简

电脑格式化教程 电脑格式化教程 Jan 08, 2024 am 08:21 AM

在使用电脑的时候很多时候都会遇到垃圾过多的情况,但是很多的用户还不知道电脑怎么格式化,没关系,下面就给你们大家带来了电脑格式化的教程一起看看吧。电脑怎么格式化:1、右击桌面的“此电脑”点击“管理”。2、在“计算机管理”中点击“存储”打开“磁盘管理”。3、选择自己要清理的硬盘右击选择“格式化”。4、勾选“执行快速格式化”并点击“确定”即可开始格式化。

格式化笔记本电脑会使其速度更快吗? 格式化笔记本电脑会使其速度更快吗? Feb 12, 2024 pm 11:54 PM

格式化笔记本电脑会使其速度更快吗?如果您想格式化您的Windows笔记本电脑,但想知道它是否会使速度更快,本文将帮助您了解这个问题的正确答案。格式化笔记本电脑会使其速度更快吗?用户格式化Windows笔记本电脑的原因有很多。但最常见的原因是笔记本电脑的性能或速度缓慢。格式化笔记本电脑会彻底删除C盘或安装Windows操作系统的硬盘分区上存储的所有数据。因此,每个用户在采取这一步之前都会三思而后行,尤其是在笔记本电脑的性能方面。本文将帮助您了解格式化笔记本电脑是否会加快速度。格式化笔记本电脑有助于

html格式化的方法有哪些 html格式化的方法有哪些 Mar 08, 2024 am 09:53 AM

html格式化方法:1、使用在线HTML格式化工具;2、使用代码编辑器自带的HTML格式化快捷键,如Visual Studio Code中的Shift + Alt + F;3、使用插件,如Sublime Text中的HTML/CSS/JS Prettify插件;4、使用命令行工具,如HTML Tidy;5、手动格式化,按照编码规范和习惯进行手动格式化。

简易JavaScript教程:获取HTTP状态码的方法 简易JavaScript教程:获取HTTP状态码的方法 Jan 05, 2024 pm 06:08 PM

JavaScript教程:如何获取HTTP状态码,需要具体代码示例前言:在Web开发中,经常会涉及到与服务器进行数据交互的场景。在与服务器进行通信时,我们经常需要获取返回的HTTP状态码来判断操作是否成功,根据不同的状态码来进行相应的处理。本篇文章将教你如何使用JavaScript获取HTTP状态码,并提供一些实用的代码示例。使用XMLHttpRequest

如何在JavaScript中获取HTTP状态码的简单方法 如何在JavaScript中获取HTTP状态码的简单方法 Jan 05, 2024 pm 01:37 PM

JavaScript中的HTTP状态码获取方法简介:在进行前端开发中,我们常常需要处理与后端接口的交互,而HTTP状态码就是其中非常重要的一部分。了解和获取HTTP状态码有助于我们更好地处理接口返回的数据。本文将介绍使用JavaScript获取HTTP状态码的方法,并提供具体代码示例。一、什么是HTTP状态码HTTP状态码是指当浏览器向服务器发起请求时,服务

See all articles