内置对象-字符串对象
内置对象第三部分-字符串
前言
一、基本包装类型
//基本包装类型
var str = '夕颜'
console.log(str.length);
//基本包装类型 : 就是把简单数据类型 包装成为了复杂数据类型
//生成临时变量,把简单数据类型包装为复杂数据类型
var temp = new String('夕颜');
//赋值给我们声明的字符变量
str = temp;
//销毁临时变量
temp = null;
二、根据字符返回位置
indexOf
// 字符串对象 根据字符返回位置 str.indexOf('要查找的字符',[起始的位置])
var str = '我爱你中国,中国';
console.log(str.indexOf('中')); // 找出字符串中 '中'出现的位置 3
console.log(str.indexOf('中',[4])); //从索引号是 4 的位置开始查找 6
❤案例 查找字符串’abcohsogkpoopghah’中o出现的位置以及次数
核心算法:
- 先查找第一个o出现的位置
- 然后 只要indexOf返回的结果不是 -1 就继续往后查找
- 因为indexOf只能查找第一个,所以后面的查找,利用第二个参数,当前的索引加1,从而继续查找
//先查找第一个o出现的位置
//然后 只要indexOf返回的结果不是 -1 就继续往后查找
//因为indexOf只能查找第一个,所以后面的查找,利用第二个参数,当前的索引加1,从而继续查找
var str= 'abcohsookpoopghah';
var index =str.indexOf('o');
var num = 0;
console.log(index);
while (index !== -1) {
console.log(index);
num++;
index=str.indexOf('o',index+1);
}
console.log('o出现的次数是' + num);
三、根据位置返回字符
// 1.charAt(index) 根据位置返回字符
var str = '夕颜LOVE';
console.log(str.charAt(1));
//遍历所有的字符
for (var i =0;i<str.length; i++) {
console.log(str.charAt(i));
}
//charCodeAt(index) 返回相应索引号的字符ASCII值 目的:判断用户按下了哪个键
console.log(str.charCodeAt(0));
// H5新增
console.log(str[0]); //----------------相对简单
案例:判断一个字符串’abcdhioihioy98dayfayau’中出现次数最多的字符,并统计其次数
//利用charAt()遍历所有字符
//把每个字符都存储给对象,作为该对象的属性,如果对象没有该属性,就为1,如果存在了就+1
//遍历对象,得到最大值和该字符
var str = 'abcdhioihioy98dayfayau';
var o = {}; //创建一个空对象
for (var i=0; i<str.length ; i++) {
var chars = str.charAt(i); //chars是 字符串中的每一个字符
if (o[chars]) {
o[chars] ++;
} else {
o[chars] = 1;
}
}
console.log(o);
//遍历对象
var max = 0;
for (var k in o) {
if (o[k]>max) {
max = o[k];
ch = k ;
}
}
console.log(max);
console.log('最多的字符是' + ch);
四、字符串操作
截取
// substr('截取的位置','截取几个字符')
var str = '我爱你中国';
console.log(str.substr(2,2)); // 第一个2是索引的2 第二个是取几个字符
替换
//replace ('被替换的字符','替换为的字符')
var str1 = 'gagdjf' ;
console.log(str1.replace('a','g')); //只能替换第一个字符
分割
//字符串转换为数组 split('分隔符')
var str2 = '我,爱,你,中,国';
console.log(str2.split(','));
var str3 = '我 & 爱 & 你 & 中 & 国';// ['我','爱','你','中','国']
console.log(str3.split( '&' ));// ['我','爱','你','中','国']
总结
字符串对象总结完毕