蓝背景为与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. ios获取系统时间

    //获取系统时间 NSDate * date=[NSDate date]; NSDateFormatter *dateformatter=[[NSDateFormatter alloc] init]; ...

  2. u-boot-2011.06在基于s3c2440开发板的移植之引导内核与加载根文件系统

    http://www.linuxidc.com/Linux/2012-09/70510.htm  来源:Linux社区  作者:赵春江 uboot最主要的功能就是能够引导内核启动.本文就介绍如何实现该 ...

  3. php 文件夹是否存在,不存在就创建

    $lujing = "./nihao/wohao"; if(!is_dir($liujing)){ mkdir(iconv("UTF-8", "GBK ...

  4. Spring Tool Suite(STS)加速

    Java开发首选技术是Spring,使用Spring技术首选的开发工具是STS,STS有许多加速spring开发的提示和快捷方式,并将spring的最新技术通过STS快速简单的传递给用户. 但是STS ...

  5. source insight -i failed reason

    双击.c调用sourceinsight.exe -i "路径" 如果路径太长就会新开一个窗口,测试相同文件,不同路径现象不同.

  6. bash - move faster

    http://teohm.com/blog/shortcuts-to-move-faster-in-bash-command-line/ Shortcuts to move faster in Bas ...

  7. java File类的基本使用

    package com.soar.file; import java.io.File; import java.io.IOException; public class Demo2_FileMetho ...

  8. css样式继承规则详解

    css样式继承规则详解 一.总结 一句话总结:继承而发生样式冲突时,最近祖先获胜(最近原则). 1.继承中哪些样式不会被继承? 多数边框类属性,比如象Padding(补白),Margin(边界),背景 ...

  9. nopCommerce 3.9 大波浪系列 之 使用部署在Docker中的Redis缓存主从服务

    一.概述 nop支持Redis作为缓存,Redis出众的性能在企业中得到了广泛的应用.Redis支持主从复制,HA,集群. 一般来说,只有一台Redis是不可行的,原因如下: 单台Redis服务器会发 ...

  10. Html Vedio标签全屏

    http://ask.csdn.net/questions/221701 http://www.zhangxinxu.com/wordpress/2010/03/every-browser-suppo ...