内置对象之字符串对象

字符串对象特点

  1. 有索引值
  2. 有长度
  3. 有序的

把字符串转换为字符串对象。索引值变成键,语法:
var 接收转换的变量 = new String(要转换的数据类型或者变量) 例:

 var str = 'sd,j,snffsdfs';
 var res = new String(str);

在这里插入图片描述

查看字符串中是否有某段字符

格式:
var 变量 = 要检查的字符串.indexOf(‘字符串’/变量);

如果没有这段字符就为假,会返回 -1。
为真就会返回这段字符在字符串的索引值,索引值从0开始

		var str = 'adssadasd';//给str赋值
        var cart = 'abc';//给cart赋值
        var res = str.indexOf(cart);//这里会返回负一,因为str里没有cart变量的值
        console.log(res);
        var res1 = str.indexOf('a'); //这里会返回0,因为第一个a在str字符串里索引值是0
        console.log(res1);

我们可以用if语句判断某段字符存不存在于这个字符串中

		var str_init = 'uhaduahduaid';
        var res = str_init.indexOf('xie');
        if(res==-1){
            console.log('没有')
        }else{
            console.log('有')
        }

查找替换字符串中的某个值

格式:
var 变量 = 要查找的字符串.replace([‘修改的字符’],‘修改后的字符’)

/[‘修改的字符’]/g 匹配所有的’修改的字符’ g:所有的
str.replace(exp,newStr) 替换
第一个参数exp:是正则表达式,作用就是查找str中的字符
第二个参数newStr:表示新字符 ,作用就是用于替换exp匹配的字符。

var person = '美国人,日本人,韩国人';
var res = person.replace(/['人']/g,'佬');// 这里我们将所有的'人'改成了佬
			console.log(res);//res返回值是改变过后的person

字符串的随机(验证码)

var str = '123456789abcdefghijklmnopqrstuvwxyz';//创建一个字符串
        var res = '';// 定义一个空字符串用于输出
        for(i=0;i<6;i++){ // 循环6次输出6个随机数
            var random = Math.floor(Math.random()*str.length);// random是为了获取随机的字符串索引值
            res += str[random]; //每次多拼接一个字符串 //str[random]是随机索引值的字符//每次循环多拼接一个字符
            // console.log(res);
        }
        console.log(res);

数组转换为字符串

格式
var 接收转换的变量 = 要转换的字符串.toString()
这样数组本身不会改变,返回值是字符串。例:

 var arr = [2.3,45,'ni',true]
  var res = arr.toString(); //将arr数组转化为字符串类型并赋值给res这个变量
        console.log(res,arr); // res是字符串类型的arr,arr还是之前的那个arr

在这里插入图片描述

数组转字符串并替换逗号

格式:
var 接收数据的变量 = 被转换的数组.join(‘要把逗号转换为的参数’)

var arr = [2.3,45,'ni',true]
var str = arr.join('|');// str是转换过后的字符串,这里将逗号转换为了|
        console.log(str,arr); 

在这里插入图片描述

分割字符串并转为数组类型

格式:
var 接收分割转换后的变量 = 被分割的字符串.split(切割的标志比如逗号,句号(这是第一个参数),需要的数量,不包括切割的标志) 例:

	var arr = [2.3,45,'ni',true]
  	var res = arr.toString();//把arr数组转化为字符串形式,并赋值给res
	var resultArr = res.split(',',2)// 这里我们把逗号作为切割标志并截取两个字符串长度
       	console.log(resultArr,res);//resultArr是切割转换后的数组,res没变

在这里插入图片描述

注意:如果不写第二个参数,默认为切割整个字符串。一二参数都不写那么数组就一个索引值,内容是整个字符串

截取字符串

截取字符串有两种方法

  1. var 接收被截取的字符串的变量 = 被截取的字符串.slice(第一个参数是截取的起点,会被截取到,参数是字符串的索引值,第二个参数是结束截取的位置,不会被截取到,参数是字符串的索引值)
    例:
var str = 'a,b,c200.000defghijk';
var res = str.slice(2,7); //这里我们截取的是索引值为2的‘b’到索引值为6的‘0’结束,中间的,号也有索引值
			console.log(res);//res的值就是'b,c200'
  1. var 接收被截取的字符串的变量 = 被截取的字符串.substr(第一个参数是截取的起点,会被截取到,参数是字符串的索引值,第二个参数是截取的长度)
    例:
var str = 'a,b,c200.000defghijk';
var res1 = str.substr(3,5);//从索引值为3的字符开始截取一直截取5个赋值给res1
			console.log(res1);// res1值为',c200'

第三种其实跟第一种一样就是api不一样,一个是slice一个是substring参数其实都是一样的

大写小写和查询编码值

  1. 全部变为小写
    语法:
    var 接收变为小写的字符串的变量 = 要变的字符串.toLowerCase();例
var str='ajhdsifusfkuySUFHUIWEFHUHUF';
var res = str.toLowerCase();
		console.log(str,res);//str没变,res是str全小写状态
  1. 全部变为大写
    语法:
    var 接收变为大写的字符串的变量 = 要变的字符串.toUpperCase();例
var str='ajhdsifusfkuySUFHUIWEFHUHUF';
var res1 = str.toUpperCase();
		console.log(res1,str);//str没变,res是str全大写状态
  1. 查询字符的编码值
    语法:
    var 接收输出的编码值 = 某个字符(多个字符只会解析第一个).charCodeAt();例:
var res3 = '2'.charCodeAt();
  1. 用索引值查询字符串中的某个字符
    语法:
    var 接收数据的变量 = 查询的字符串.charAt(某个字符串的索引值); 例:
var str='ajhdsifusfkuySUFHUIWEFHUHUF';
var res2 = str.charAt(6); //索引值为6的字符
console.log(res2)// 索引值为6的字符是'f'所以返回的是f
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值