字符串对象
6.1基本包装类型
为了方便操作基本数据类型, JavaScript还提供了三个特殊的引用类型: String. Number和Boolean。
基本包装类型就是把简单数据类型包装成为复杂数据类型,这样基本数据类型就有了属性和方法。
<script>
//基本包装类型
var str = 'andy';
console.log(str.length);
//(1)把简单数据类型包装为复杂数据类型
var temp = new String('andy');
//(2)把临时变量的值 给str
str = temp;
//(3)销毁临时变量
temp = null;
</script>
6.2字符串的不可变
- 指的是里面的值不可变,虽然看上去可以改变内容,但是其实是地址变了,内存中心开辟了一个内存空间。
<script>
//字符串的不可变性
var str = 'andy';
console.log(str);
str = 'red';
console.log(str);
//因为我们字符串的不可变所以不要大量的拼接字符串
var str = '';
for(var i = 1; i<10000; i++)
{
str += i;
}
console.log(str);
</script>
6.3根据字符返回位置
- 字符串所有的方法,都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串
- 字符串对象根据字 符返回位置str . indexOf(‘要查找的字符’,[ 起始的位置])
<script>
var str = '改革春风吹满地,春天来了';
console.log(str.indexOf('春'));
console.log(str.indexOf('春',3)); //从索引号是3 的位置上开始往后查找
</script>
案例:返回字符位置
<script>
var str = "oabcoefoxyozzopp";
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);
</script>
6.4根据位置返回字符(重点)
<script>
//1.charAt(index)根据位置返回字符
var str = 'andy';
console.log(str.charAt(3));
//遍历所有的字符
for(var i =0;i<str.length;i++)
{
console.log(str.charAt(i));
}
//2.charCodeAt(index) 返回相应索引号的字符ASCII值 目的:
//判断用户按下了哪个键
console.log(str.charCodeAt(0)); //97
//3.str[index] H5新增的
console.log(str[0]); //a
</script>
6.5字符串操作方法(重点)
<script>
//字符串操作方法
// 1.concat('字符串1','字符串2'.....)
var str = 'andy';
console.log(str.concat('red'));
//2.substr('截取的起始位置','截取几个字符');
var str1 = '改革春风吹满地';
console.log(str1.substr(2,2)); //第一个2 是索引号的2 从第几个开始 第二个2 是去几个字符
</script>
感兴趣的欢迎关注微信公众号:黑马金牌编程