`
Jack-chen
  • 浏览: 71220 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

难舍Javascript 篇 之 扩展String 函数

阅读更多
工作需要,暂时要告别javascript 。趁这段时间不是特别忙,将一些javascript 技术总结下。


/**
* @brief  扩展原生字符串
* @author hechangmin@gmail.com
*/

var StringEx =
{
    /**
     * @brief 去除字符串前后空格
     */
    trim : function()
    {
        return this.replace(/(^\s*)|(\s*$)/g, "");
    },
   
    /**
     * @brief 去除左边空格
     */
    ltrim : function()
    {
        return this.replace(/(^\s*)/g, "");
    },
   
    /**
     * @brief 去除右边空格
     */
    rtrim : function()
    {
        return this.replace(/(\s*$)/g, "");     
    },
   
    /**
     * @brief 避免XSS 攻击
     */
    avoidXSS : function()
    {
        var strTemp = this.replace(/&/g, "&");
        strTemp = strTemp.replace(/</g, "&lt;");
        strTemp = strTemp.replace(/>/g, "&gt;");
        strTemp = strTemp.replace(/\"/g, "&quot;");
        return strTemp;   
    } ,
   
    /**
     * @brief 获取字符串的字节长度 汉字默认双字节
     */
    byteLength : function()
    {
          return this.replace(/[^\x00-\xff]/g,"**").length;
    },
   
    /**
     * @brief     除去HTML标签
     * @example    <div id="test1">aaaa</div>  =>  aaaa
     */
    removeHTML : function()
    {
        return this.replace(/<\/?[^>]+>/gi, '');
    },
   
    /**
     * @brief      格式化字符串
     * @example "<div>{0}</div>{1}".format(txt0,txt1)
     */
    format : function()
    {
        var args = [];
       
        for (var i = 0, il = arguments.length; i < il; i++)
        {
            args.push(arguments[i]);
        }
       
        return this.replace(/\{(\d+)\}/g, function(m, i)
        {
            return args[i];
        });
    },
   
    /**
     * @brief 字符串转数字
     */
    toInt : function()
    {
        return Math.floor(this);
    }   
}


for (var it in StringEx)
{
    String.prototype[it] = StringEx[it];
}
test:

    var strTest = "   -{0}这里是扩展原生字符串test{1}- ";
           
            alert(strTest.length);                 // output : 26
            alert(strTest.ltrim().length);      // 23
            alert(strTest.rtrim().length);      // 25
           
            alert(strTest.byteLength());        // 36
           
            alert(strTest.format("abc","def")); //   -abc这里是扩展原生字符串testdef-
           
            var strNumber = "89989";
           
            alert(typeof strNumber.toInt());    // number
           
            var domTest = document.getElementById("test1").outerHTML;
           
            alert(domTest);
           
            alert(domTest.avoidXSS());
            alert(domTest.removeHTML());
分享到:
评论

相关推荐

    一些javascript的扩展函数

    一些js的扩展函数 一些js的扩展函数 一些js的扩展函数 一些js的扩展函数

    JavaScript之函数(ppt)

    JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数...

    JavaScript函数式编程.pdf

    不过,由于【标题】中提供了文档的名称——"JavaScript函数式编程.pdf",我可以根据这个名称扩展出关于JavaScript函数式编程的知识点。 JavaScript函数式编程的知识点非常丰富,涉及很多方面的内容,下面将详细介绍...

    javascript函数式编程

    JavaScript函数式编程是一种编程范式,它强调将计算视为数据处理的过程,并且重视函数作为第一类公民,即函数可以作为变量赋值、作为参数传递、作为返回值返回。这种编程风格在JavaScript中尤其常见,因为它提供了...

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    JAVASCRIPT函数之高阶函数.pdf

    在本篇关于JavaScript高阶函数的文档中,我们将会详细探讨JavaScript中的高阶函数概念及其在实际编程中的应用。高阶函数是函数式编程的核心概念之一,在JavaScript中尤为重要,因为JavaScript函数是"一等公民"。 ##...

    JavaScript函数(源代码)

    JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)...

    JavaScript 轻量级函数式编程

    JavaScript 轻量级函数式编程 JavaScript 轻量级函数式编程

    javascript笔记 String类replace函数的一些事.docx

    ### JavaScript中的`String.prototype.replace`方法详解 #### 一、`replace`方法的基本用法 在JavaScript中,`String.prototype.replace`是一个非常重要的方法,用于替换字符串中的某些部分。其基本语法如下: ``...

    Javascript 设计模式之构造函数模式.zip

    总结,JavaScript的构造函数模式是创建对象的主要方式之一,它结合原型和原型链提供了面向对象编程的基础。理解并掌握这一模式有助于编写可维护、可扩展的代码。在实际开发中,构造函数模式常常与其他设计模式(如...

    JavaScript字符串函数大全

    JavaScript字符串函数大全 JS自带函数 JavaScript字符串函数大全 JS自带函数

    javascript函数大全

    javascript函数大全 91.document.write()不换行的输出,document.writeln()换行输出 92.document.body.noWrap=true;防止链接文字折行. 93.变量名.charAt(第几位),取该变量的第几位的字符. 94."abc"....

    javaScript常用函数使用总结

    JavaScript常用函数使用总结涵盖了多种在JavaScript编程中常用的方法,它们分别属于不同的类型,如String类型和Number类型。以下是对每个函数详细的说明和应用示例: 1. parseInt()函数 parseInt()是String类型的...

    Javascript实现Array和String互转换的方法

    在JavaScript中,Array(数组)和String(字符串)的互转换是经常需要掌握的基础知识点,尤其在处理数据时非常实用。本文将详细介绍如何使用JavaScript内置方法来实现数组与字符串之间的转换,其中涉及到了两个重要...

    JavaScript中常用内置函数.docx

    Number 和 String 函数的主要用途是在 JavaScript 代码中将对象转换为数字或字符串,例如可以用来将日期对象转换为数字值,或者将数字值转换为字符串。 6. escape 和 unescape 函数 escape(charString) 函数主要作...

    javascript数据值复制函数

    实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。

    JavaScript常用字符串与数组扩展函数小结_.docx

    ### JavaScript常用字符串与数组扩展函数小结 #### 引言 在现代Web开发中,JavaScript是一种必不可少的语言。作为一门功能强大的脚本语言,它提供了大量的内置对象和方法来处理各种数据类型,其中最常用的就是字符...

    Javascript 函数快速查询手册

    Javascript 函 数 快 速 查 询 手 册 .

    JavaScript函数式编程

    全书分别介绍了JavaScript函数式编程、一等函数与Applicative编程、变量的作用域和闭包、高阶函数、由函数构建函数、递归、纯度和不变性以及更改政策、基于流的编程、类编程。除此之外,附录中还介绍了更多函数式...

    JavaScript 函数速查

    此外,ES6及后续版本引入的许多新特性,如箭头函数、解构赋值、模板字符串等,也极大地扩展了JavaScript的功能。 这个“JavaScript 函数速查”资源可以帮助开发者快速定位所需函数,提高编程效率。在日常开发中,...

Global site tag (gtag.js) - Google Analytics