侧边栏壁纸
  • 累计撰写 225 篇文章
  • 累计创建 275 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

JavaScript字符串(string)对象

DGF
DGF
2017-05-09 / 0 评论 / 0 点赞 / 31 阅读 / 0 字

一、string的属性

1、length获取字符串长度
var str = "dgf";

console.log(str.length) // 输出3
2、prototype向对象添加属性和方法
// 去掉字符左端的的空白字符

String.prototype.LeftTrim = function() {

 return this.replace(/(^[\\s]*)/g, "");

}

// 去掉字符右端的空白字符

String.prototype.RightTrim = function() {

 return this.replace(/([\\s]*$)/g, "");

}

// 去掉字符两端的空白字符

String.prototype.trim = function() {

   return this.replace(/^\s*|\s*$/g, '');

}

// 判断字符串是否以指定的字符串开始

String.prototype.StartsWith = function(str) {

 return this.substr(0, str.length) == str;

}

// 判断字符串是否以指定的字符串结束

String.prototype.EndsStr = function(str) {

   return this.substr(this.length - str.length) == str;

}

二、string的方法

1、charAt() 获取字符串指定位置的字符
var str = "dgf"

console.log(str.charAt(0)) // 输出d
2、indexOf() 方法可返回某个指定的字符在字符串中首次出现的位置。

注意:此方法区分大小写字母,如果字符串中没有要检索的字符则返回-1

var str = "dgf";

console.log(str.indexOf(“g”)) // 输出1
3、lastIndexOf()方法正好与indexOf()方法相反,可返回某个指定的字符在字符串中最后一次出现的位置。
var str = "dgfdgf";

    console.log(str.indexOf("f")) // 输出 2

    console.log(str.lastIndexOf(“f”)) // 输出 5

注:此方法区分大小写字母,如果字符串中没有要检索的字符则返回-1

4、concat()用于连接多个字符串
var str1 = "dgf",

   str2 = "html",

   str3 = "web";

console.log(str1.concat(str2,str3)) // 输出dgfhtmlweb

不过很多时候字符串拼接用“+”来得更简便

上面str1,str2,str3都没办,返回的是一个新的字符串

5、split()用于将一个字符串分割成字符串数组

var str = "my name is dgf";

var str2 = "my,name,is,dgf"

console.log(str.split(" ")) // 返回["my", "name", "is", "dgf"]

console.log(str.split(" ", 3)) //3控制数组长度 返回 ["my", "name", "is"]

console.log(str.split(",")) //返回 ["my", "name", "is", "dgf"]

console.log(str.split(/\s+/)) // ["my", "name", "is", "dgf"]
6、slice()截取字符串中的一段,返回一个新字符串,原字符串不发生改变

var str = "dgfwebdemo";

    console.log(str.slice(2, 3)); // 输出f

    console.log(str.slice(2)); // 输出fwebdemo

注:返回新字符串含头不含尾,没有指定结尾的参数,返回的字符串为开始到结束。

7、toLowerCase()把字符串转换成小写
var str = "DGF";
console.log(str.toLowerCase()) // 输出 dgf
8、toUpperCase()把字符串转换成大写
var str = "dgf";
console.log(str. toUpperCase()) // 输出 DGF
9、substr()从指定字符串中抽取一个子串
var str = "dgfnydx";

    console.log(str.substr(3)) // 输出nydx,指定起始位置,没指定长度,则抽取起始位到结束的子串

    console.log(str.substr(3, 3)) // nyd,指定了起始位置和长度,则从起始位置抽取相应长度的子串

    console.log(str.substr(-1)) // 输出x

    console.log(str.substr(-2)) // 输出dx,如指定起始位置为负数,-1则从右往左数即字符串倒数第一位开始到结束,-2,-3以此类推。

    console.log(str.substr(-3, 2)) // 输出 yd

    console.log(str.substr(-3, 3)) // 输出 ydx

    console.log(str.substr(-3, 4)) // 输出 ydx
10、substring()从指定字符串中抽取指定起始位置和结束位置之间的字符
var str = "dgfnydx";

    console.log(str.substring(3)) // 输出 nydx

    console.log(str.substring(3, 4)) // 输出 n

    console.log(str.substring(3, 5)) // 输出 ny,抽取的子串含头不含尾

    console.log(str.substring(5, 3)) // 输出 ny,如果起始位置大于结束位置,则先交换位置再抽取字符

注:起始位置的值为非负整数。

11、match()在字符串内匹配指定的值或者匹配正则表达式的值
var str = "the2demo5fdgf";

     //检索字符串

    console.log(str.match("dgf")); // dgf

    console.log(str.match("dgfg")); // null

     //匹配正则表达式

    console.log(str.match(/\d+/g)); // 2, 5
12、replace()在字符串中替换与指定字符串相同的子串,或者替换与正则表达式匹配的字符。
var str = "welcome to my blog, you are my friend";

    console.log(str.replace(/my/, "dgf's")) // welcome to dgf's blog, you are my friend

    console.log(str.replace(/my/g, "dgf's")) // 全局替换welcome to dgf's blog, you are dgf's friend
13、search() 可用于检索字符串中指定的子串,或者与正则表达式匹配的子串。返回第一匹配的位置,其不执行全局匹配
var str = "welcome to dgf's blog! you are dgf's friend!";

    console.log(str.search(/dgf/)) // 11 空格也算

    console.log(str.search(/Dgf/)) // -1 search对大写字母敏感

    console.log(str.search(/Dgf/i)) // 11 忽略大小写检索

注;如果没有检索到匹配的子串,返回-1

14、charCodeAt()返回指定位置字符的Unicode码,非负数
var str = "dgf";
console.log(str.charCodeAt(0)) // 100
15、charAt() 获取字符串指定位置的字符
var str = "dgf"
console.log(str.charAt(0)) // 输出d
0

评论区