蓝背景为与Array相同的方法

一、字符方法

charAt(index):返回在指定位置的字符。
var str="abcdefg";
//undefined
str[0]
//"a",因为ie67不支持这种写法
str.charAt(0)
//"a"
charCodeAt(index):返回在指定的位置的字符的 Unicode 编码。

二、字符串操作方法,不会影响原字符串,返回新字符串

concat(stringX,stringX,...,stringX):字符串拼接->返回新字符串,不影响原字符串。更多时候用“+”
slice(start,end):提取字符串的片断->返回被提取的部分。参数为负数时,会将传入的负值与字符串的长度相加。end:若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。
split(separator,howmany):把一个字符串分割成字符串数组。howmany(可选)表示数组的最大长度,超过的部分将被舍弃。separator分隔符不被包含在任何子字符串中,如果sepatator为空字符串,则返回字符串中的字符序列组成的数组。如果split方法没有任何参数,则返回仅包含字符串本身,仅有一个元素的数组。
substring(start,stop):提取字符串中两个指定的索引号之间的字符。会将所有负值参数转换为0。
substr(start,length):从起始索引号提取字符串中指定数目的字符。将负的第一个参数加上字符串的长度,将负的第二个参数转换为0

var str="abcdefg" //undefined
str.slice(0,1)
//"a"
str.substr(0,1)
//"
str
//"abcdefg"
str.slice(-3)
//"efg"
str.substring(-3) //"abcdefg"
str.substr(-3)
//"efg"
str.slice(3,-4)
//""
str.slice(0,-4)
//"abc"
str.substring(3,-4)
//"abc"
str.substr(3,-4)
var str="how are you";
//undefined
str.split(" ")
//["how", "are", "you"]
var str = 'abcd'
//undefined
str.split('',2)
//["a", "b"]
str.split()
//["abcd"] 

trim:返回删除前后空格后的新字符串

trimLeft:删除开头空格

trimRight:删除末尾空格

var str="   abc  "
//undefined
str
//" abc "
str.trim()
//"abc"
str
//" abc "
str.trimLeft()
//"abc "

大小写转换:

toLowerCase

toLocalLowerCase

toUpperCase

toLocalUpperCase:针对地区的方法  

三、字符串位置方法

indexOf(searchvalue,fromindex):返回某个指定的字符串值在字符串中首次出现的位置。
lastIndexOf(searchvalue,fromindex):在一个字符串中的指定位置从后向前搜索,返回位置。
str.indexOf('b')
//1
str.lastIndexOf('b')
//1

四、字符串模式匹配方法

match:

stringObject.match(searchvalue)
stringObject.match(regexp)

一个参数,若没有找到任何匹配的子串,则返回 null。如果找到了一个或多个匹配子串,则返回一个数组。

var str="cat,bat,sat,fat"
undefined
str
"cat,bat,sat,fat"
var pattern=/.at/
undefined
str.match(pattern)
["cat"]
var str="cat, bat, sat, fat"
undefined
str.match(pattern)
["cat"]
var pattern=/.atl/g
//undefined
str.match(pattern)
//null
var pattern=/.at/g
//undefined
str.match(pattern)
//["cat", "bat", "sat", "fat"]
search(regexp):唯一参数与match相同,返回第一个匹配项的索引,没找到返回-1
replace(regexp/substr,replacement)->返回新字符串,原字符串不变

  如果第一个参数是字符串(不会被转换成正则表达式),那么只会替换第一个子字符串。要想替换所有子字符串,唯一的办法 是提供一个正则表达式,而且指定g。

  第二个参数可以是一个字符串或者一个函数

str
//"cat, bat, sat, fat"
str.replace(/at/g,"ond")
//"cond, bond, sond, fond"
str
//"cat, bat, sat, fat"
str.replace(/at/g,function(){ return 2})
//"c2, b2, s2, f2"

  用法:http://www.cnblogs.com/dolphinX/archive/2012/11/21/2780559.html

  第二个参数是函数:

  

function htmlEscape(text){
return text.replace(/[<>"&]/g,function(match,pos,originalText) {
switch (match) {
case "<":
return "<";
case ">":
return ">";
case "&":
return "&";
case "\"":
return """;
}
})
}
//undefined
htmlEscape("<p class=\"greeting\">Hello World!</p>")
//"<p class="greeting">Hello World!</p>"

  五、quote

quote:将字符串中包含的特殊字符进行转义(反斜杠),然后在字符串两边各加上一个双引号(")并返回,并不修改原字符串。仅firefox支持。可以用JSON.stringify代替(https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify)

str str.quote() eval(str.quote())
Hello world! "Hello world!" Hello world!
Hello
        world!
"Hello\n\tworld!" Hello
        world!
" \ — ' "\" \\ \u2014 '" " \ — '

var meta = {
'\b': '\\b',
'\t': '\\t',
'\n': '\\n',
'\f': '\\f',
'\r': '\\r',
'"': '\\"',
'\\': '\\\\'
}
var quote = window.JSON && JSON.stringify || function(str) {
return '"' + str.replace(/[\\\"\x00-\x1f]/g, function(a) {
var c = meta[a];
return typeof c === 'string' ? c :
'\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
}) + '"'
}

  用途:

    1、用在处理后端传给我们的数据

    2、将数据存放在到localStroage

DOM存储的机制是通过存储字符串类型的键/值对,来提供一种安全的存取方式.所以需要把JSON转换为JSON字符串。

Storage介绍:https://developer.mozilla.org/zh-CN/docs/Web/Guide/API/DOM/Storage/Storage

本地存储:http://www.cnblogs.com/darr/p/4359866.html

参考:http://riny.net/2012/the-summary-of-javascript-string/

String方法总结的更多相关文章

  1. JavaScript学习笔记-用于模式匹配的String方法

    用于模式匹配的String方法:   String支持4种使用正则表达式的方法:           seach()用于检索,参数是一个正则表达式,返回第一个与之匹配的子串的位置,找不到则返回-1,如 ...

  2. 在String()构造器不存在的情况下自定义一个MyString()函数,实现如下内建String()方法和属性:

    在String()构造器不存在的情况下自定义一个MyString()函数,实现如下内建String()方法和属性: var s = new MyString("hello"); s ...

  3. 【Java】Java中常用的String方法

    本文转载于:java中常用的String方法 1 length()字符串的长度 String a = "Hello Word!"; System.out.println(a.len ...

  4. 用来生成get set string 方法

    https://projectlombok.org/ 主要是用来生成get set string 方法等等 原理是注解

  5. Ruby字符串(2):String方法详细整理

    String方法整理 官方手册 类方法 new new(str="") → new_str new(str="", encoding: enc) → new_s ...

  6. JavaScript 中string方法

    注意:JavaScript的字符串是不可变的(immutable),String类定义的方法不能改变原来字符串内容,例如String.toUpperCase()这样的方法,返回的是全新的字符串,而不是 ...

  7. 用于模式匹配的String方法

    String支持四种使用正则表达式的方法. 1.search()返回第一个与之匹配的子串的起始位置,找不到返回-1.search()参数是一个正则表达式,如果参数不是正则表达式,则会先通过RegExp ...

  8. 浅析正则表达式模式匹配的String方法

    在JavaScript代码中使用正则表达式进行模式匹配经常会用到String对象和RegExp对象的一些方法,例如replace.match.search等方法,以下是对一些方法使用的总结. Stri ...

  9. Integer.valueOf(String) 方法之惑

    本文由 ImportNew - 靳禹 翻译自 stackoverflow.欢迎加入翻译小组.转载请见文末要求. 有个仁兄在 StackOverflow 上发起了一个问题,是这么问的: “ 我被下面的代 ...

  10. [转]Integer.valueOf(String) 方法之惑

    具体问题以前偶然遇到过,好象是一个java答题得分的论坛,当时做错还研究了下怎么回事,但是前两天遇到类似问题却没想起来.巩固下基础,转了下面文章. 以下内容转自:http://www.importne ...

随机推荐

  1. python opencv3 —— 改变颜色空间(color space)

    OpenCV: Changing Colorspaces 1. 查看 opencv 支持的颜色空间转换 opencv 中色彩空间转换由一些定义的全局的宏给出,使用如下的代码,将它们调出: >&g ...

  2. LA 2191 - Potentiometers

    看题传送门 Fenwick树的应用~~~ #include <cstdio> #include <cstring> #include<algorithm> usin ...

  3. [React] Create an Auto Resizing Virtualized List with react-virtualized

    In this lesson we'll show how to use the AutoSizer component from react-virtualized to automatically ...

  4. [PReact] Create a Hello World App with Preact

    By creating a simple ‘hello world’ example application first in vanilla Javascript, and then in Prea ...

  5. [TypeStyle] Style CSS pseudo elements with TypeStyle

    Just like pseudo-classes, pseudo-elements are added to selectors but instead of describing a special ...

  6. 应用层协议实现系列(三)——FTPserver之设计与实现

    在实现了HTTPserver之后.本人打算再实现一个FTPserver. 因为FTP协议与HTTP一样都位于应用层,所以实现原理也类似. 在这里把实现的原理和源代码分享给大家. 首先须要明白的是FTP ...

  7. 从0開始学习 GitHub 系列之「07.GitHub 常见的几种操作」

    之前写了一个 GitHub 系列,反响非常不错,突然发现居然还落下点东西没写,前段时间 GitHub 也改版了,借此机会补充下. 我们都说开源社区最大的魅力是人人多能够參与进去,发挥众人的力量,让一个 ...

  8. mycat schema.xml 配置文件详解

    <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> &l ...

  9. zookeeper无法启动&quot;Unable to load database on disk&quot;

    自己的虚拟机集群.一次强制关机后,发现slave2的zookeeper起不来了 http://blog.csdn.net/ashic/article/details/47088299 下午5点29:5 ...

  10. Java8获取参数名及Idea/Eclipse/Maven配置

    在Java8之前,代码编译为class文件后,方法参数的类型固定,但是方法名称会丢失,方法名称会变成arg0.arg1.....而现在,在Java8开始可以在class文件中保留参数名,这就给反射带来 ...