js内置对象——String对象

JS字符串操作详解
本文深入讲解了JavaScript中字符串的各种操作方法,包括创建、格式编排、检索、截取、分隔、连接、替换等,同时介绍了字符串的属性及其实用案例。

String对象

  • String对象用于处理文本(字符串)

  • 创建String对象的语法:

    new Sting(“abcde”);

  • 创建原始类型字符串变量:

    var name1 = “wang”;
    var name2 = String(“wang”);

  • 创建引用类型字符串对象:

    var name3 = new String(“wang”);

字符串的使用

  • Javascript中的字符串内容是不可变的。String对象的大部分方法,返回的都是一个全新的对象,而不是修改原始字符串内容,如:

    var s1 = new String(‘hello’);
    var s2 = s1.toUpperCase();
    console.log(s1);
    console.log(s2);

  • Length属性返回字符串中字符的个数。Javascript字符串默认采用Unicode字符集,中文字符也只算一个字符。

    var s1 = new String(‘abc中文’);
    console.log(s1.length);

格式编排方法
在这里插入图片描述
大小写转换方法

  • toLowerCase() 方法返回字符串的完全小写形式
  • toUpperCase() 方法返回字符串的完全大写形式
	var name = ‘WangMing’;
	var lowerName = name.toLowerCase();
	var upperName = name.toUpperCase();
	console.log(name);
	console.log(lowerName);
	console.log(upperName);

在这里插入图片描述
获取指定位置的字符

  • charAt(index) 方法用于获取指定下标处的字符
   	var s1 = new String("abc中文def");
    var s2 = s1.charAt(2);
    console.log(s2);
    //c
  • charCodeAt(index) 方法用于获取指定下标处的字符的Unicode码
   var s1 = new String("abc中文def");
    console.log(s1.charCodeAt(2));
    console.log(s1.charCodeAt(3));
    console.log(s1.charCodeAt(4));

在这里插入图片描述
检索字符串

  • indexOf(value,[fromIndex]) 返回第一次出现指定字符的下标
  • lastIndexOf(value,[fromIndex]) 返回最后一次出现指定字符串的下标
var email = "stanley.wang@163.com";

console.log(email.indexOf("stanley"));
console.log(email.indexOf("@"));
console.log(email.indexOf("@",5));
console.log(email.lastIndexOf("@"));
console.log(email.lastIndexOf("@",5));
console.log(email.lastIndexOf("mary"));

在这里插入图片描述
截取字符串

  • slice(start,[end]) 返回从start到end-1范围内的子串;若省略end,则直接获取到字符串结尾
  • substring(start,[end]) 返回从start到end-1范围内的子串;若省略end,则直接获取到字符串结尾;
var email = "stanley.wang@163.com";
  
console.log(email.slice(8,12));
console.log(email.slice(8));
console.log(email.substring(8,12));
console.log(email.substring(8));
console.log(email.slice(-7,-4));

//slice()方法参数可以为负数;substring()参数必须为非负数

在这里插入图片描述
分隔字符串

  • split(separator,[count]) 使用指定分隔符对字符串进行拆分
var data = "wang||zhang||li||fan";
var arr = data.split("||");
for(var i=0;i<arr.length;i++){
	console.log(i+":"+arr[i]);
}

在这里插入图片描述
连接字符串

  • concat(str1,str2,…) 用于拼接两个或者多个字符串或数组
var s1 = "AA";
var s2 = s1.concat('BB','CC');
console.log(s1);
console.log(s2);

在这里插入图片描述

  • 还可以使用+做字符串连接

替换子字符串

  • replace(substr/regexp,replacement)
    方法用于在字符串中用一些字符替换另一些字符,或者替换一个与正则表达式匹配的子串
var s1 = new String("Microsoft is a big Company,microsoft's color is red and has MICROSOFT logo like microsoft");

console.log(s1.replace('microsoft','oracle'));
console.log(s1.replace(/microsoft/g,'oracle'));
console.log(s1.replace(/microsoft/i,'oracle'));
console.log(s1.replace(/microsoft/g,'oracle'));
console.log(s1.replace(/microsoft/ig,'oracle'));

在这里插入图片描述
匹配

  • match(value/regexp) 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
  • 该方法类似indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置
var s1 = new String("Microsoft is a big Company,microsoft's color is red and has MICROSOFT logo like microsoft");

console.log(s1.match('microsoft'));
console.log(s1.match(/microsoft/g));
console.log(s1.match(/microsoft/i));
console.log(s1.match(/microsoft/g));
console.log(s1.match(/microsoft/ig));

在这里插入图片描述
查找

  • search(regexp) 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
  • 返回第一个与regexp相匹配的子串的起始位置;如果没有找到任何匹配的子串,返回-1
var s1 = new String("Microsoft is a big Company,microsoft's color is red and has MICROSOFT logo like microsoft");

console.log(s1.search('microsoft'));
 console.log(s1.search(/microsoft/i));

//search()方法不支持全局匹配,将忽略标志g

在这里插入图片描述

String对象的属性

属性描述
constructor对创建该对象的函数的引用
length字符串的长度
prototype允许您向对象添加属性和方法
  • constructor 属性返回对 String 对象属性创建的函数。
    语法:string.constructor

  • length属性返回字符串的长度(字符数)。
    语法:string.length

  • prototype属性允许您向对象添加属性和方法
    prototype 是全局属性,适用于所有的 Javascript 对象。
    语法:object.prototype.name=value

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值