欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js實現(xiàn)C#的StringBuilder效果完整實例

 更新時間:2015年12月22日 11:33:09   作者:Autumoon  
這篇文章主要介紹了js實現(xiàn)C#的StringBuilder效果,以完整實例形式分析總結(jié)了js實現(xiàn)C#的StringBuilder效果的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了js實現(xiàn)C#的StringBuilder效果。分享給大家供大家參考,具體如下:

/*
  ##################### DO NOT MODIFY THIS HEADER #####################
  # Title: StringBuilder Class                    #
  # Description: Simulates the C# StringBuilder Class in Javascript. #
  # Author: Adam Smith                        #
  # Email: ibulwark@hotmail.com                    #
  # Date: November 12, 2006                      #
  #####################################################################
*/
// Simulates the C# StringBuilder Class in Javascript.
// Parameter["stringToAdd"] - The string to add. 
StringBuilder = function(stringToAdd)
{  
  var h = new Array();
  if(stringToAdd){h[0] = stringToAdd;} 
  this.Append = Append;
  this.AppendLine = AppendLine;
  this.ToString = ToString;
  this.Clear = Clear;
  this.Length = Length;
  this.Replace = Replace;
  this.Remove = Remove;
  this.Insert = Insert;
  this.GetType = GetType;   
  // Appends the string representation of a specified object to the end of this instance.
  // Parameter["stringToAppend"] - The string to append. 
  function Append(stringToAppend)
  {
    h[h.length] = stringToAppend;
  } 
  // Appends the string representation of a specified object to the end of this instance with a carriage return and line feed.
  // Parameter["stringToAppend"] - The string to append. 
  function AppendLine(stringToAppend)
  {
    h[h.length] = stringToAppend;
    h[h.length] = "\r\n";
  } 
  // Converts a StringBuilder to a String.
  function ToString()
  {
    if(!h){ return ""; }
    if(h.length<2){ return (h[0])?h[0]:""; }
    var a = h.join('');
    h = new Array();
    h[0] = a;
    return a;
  }
  // Clears the StringBuilder
  function Clear()
  {
    h = new Array();
  }
  // Gets the StringBuilder Length
  function Length()
  {
    if(!h){return 0;}
    if(h.length<2){ return (h[0])?h[0].length:0; }
    var a = h.join('');
    h = new Array();
    h[0] = a;
    return a.length;
  }
  // Replaces all occurrences of a specified character or string in this instance with another specified character or string.
  // Parameter["oldValue"] - The string to replace. 
  // Parameter["newValue"] - The string that replaces oldValue. 
  // Parameter["caseSensitive"] - True or false for case replace.
  // Return Value - A reference to this instance with all instances of oldValue replaced by newValue.
  function Replace(oldValue, newValue, caseSensitive)
  {
    var r = new RegExp(oldValue,(caseSensitive==true)?'g':'gi');
    var b = h.join('').replace(r, newValue);
    h = new Array();
    h[0] = b;
    return this;
  }
  // Removes the specified range of characters from this instance.
  // Parameter["startIndex"] - The position where removal begins. 
  // Parameter["length"] - The number of characters to remove.
  // Return Value - A reference to this instance after the excise operation has occurred.
  function Remove(startIndex, length)
  {    
    var s = h.join('');
    h = new Array();
    if(startIndex<1){h[0]=s.substring(length, s.length);}
    if(startIndex>s.length){h[0]=s;}
    else
    {
      h[0]=s.substring(0, startIndex); 
      h[1]=s.substring(startIndex+length, s.length);
    }
    return this;
  }
  // Inserts the string representation of a specified object into this instance at a specified character position.
  // Parameter["index"] - The position at which to insert.
  // Parameter["value"] - The string to insert. 
  // Return Value - A reference to this instance after the insert operation has occurred.
  function Insert(index, value)
  {
    var s = h.join('');
    h = new Array();
    if(index<1){h[0]=value; h[1]=s;}
    if(index>=s.length){h[0]=s; h[1]=value;}
    else
    {
      h[0]=s.substring(0, index); 
      h[1]=value; 
      h[2]=s.substring(index, s.length);
    }
    return this;
  }
  // Gets the type
  function GetType()
  {
    return "StringBuilder";
  }
};

希望本文所述對大家JavaScript程序設(shè)計有所幫助。

相關(guān)文章

  • 微信小程序?qū)崿F(xiàn)表單驗證源碼

    微信小程序?qū)崿F(xiàn)表單驗證源碼

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)表單驗證源碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Bootstrap按鈕組實例詳解

    Bootstrap按鈕組實例詳解

    單個按鈕在Web頁面中的運(yùn)用有時候并不能滿足我們的業(yè)務(wù)需求,常常會看到將多個按鈕組合在一起使用,比如富文本編輯器里的一組小圖標(biāo)按鈕等。本文將詳細(xì)介紹Bootstrap按鈕組,感興趣的朋友一起看看吧
    2017-07-07
  • 一步快速解決微信小程序中textarea層級太高遮擋其他組件

    一步快速解決微信小程序中textarea層級太高遮擋其他組件

    這篇文章主要給大家介紹了關(guān)于如何通過一步快速解決微信小程序中textarea層級太高遮擋其他組件問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 基于JavaScript實現(xiàn)驗證碼功能

    基于JavaScript實現(xiàn)驗證碼功能

    這篇文章主要介紹了基于JavaScript實現(xiàn)驗證碼功能的相關(guān)資料
    2017-04-04
  • javascript eval()用法

    javascript eval()用法

    實例分析eval的一些使用方法與技巧。
    2009-03-03
  • Javascript使用SWFUpload進(jìn)行多文件上傳

    Javascript使用SWFUpload進(jìn)行多文件上傳

    本篇文章主要解釋了使用SWFUpload進(jìn)行多文件上傳,這里整理了詳細(xì)的代碼,有需要的可以了解一下。
    2016-11-11
  • 微信jssdk用法匯總

    微信jssdk用法匯總

    這篇文章主要針對微信jssdk用法進(jìn)行匯總,通過ready接口處理成功驗證、通過error接口處理失敗驗證等內(nèi)容介紹,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 詳解JavaScript中的強(qiáng)制類型轉(zhuǎn)換

    詳解JavaScript中的強(qiáng)制類型轉(zhuǎn)換

    這篇文章主要介紹了JavaScript中的強(qiáng)制類型轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • js操作二級聯(lián)動實現(xiàn)代碼

    js操作二級聯(lián)動實現(xiàn)代碼

    網(wǎng)上二級(多級)聯(lián)動的例子也不少,有各種不同的操作方法。我所采用的方法網(wǎng)上也應(yīng)該有的,不過我還沒有看到過。
    2010-07-07

最新評論