Python学习 Day29 JS字符串

JS字符串

官方也给字符串提供了很多的属性和方法,用来进行字符串的操作

(一)length属性

length属性:字符串的length属性,主要作用是获得字符串中字符的个数

  • 如果字符串中没有该字符,返回【-1】
var str = '水面清圆,一一风荷举';
	console.log(str.length);

字符串的length属性:经常结合循环语句一起使用,用来遍历字符

var str = '野渡无人舟自横';
	for(var i = 0;i < str.length;i++){
		console.log(str[i]);
	}

Python学习 Day29 JS字符串


(二)toLowerCase与toUpperCase方法

  • toLowerCase方法:可以将字符串中,英文字符变为小写
  • toUpperCase方法:可以将字符串中,英文字符变为大写
  • 都是返回一个新的字符串,对于初始字符串没有影响
var str = '我喜欢xBsoY';
	var newStr = str.toLowerCase();
	var newStr1 = str.toUpperCase();
	console.log(newStr);
	console.log(newStr1);

Python学习 Day29 JS字符串


(三)search与split方法

search方法:获取某个字符的索引值【第一个】
split方法:将字符串通过某个字符切割为一个数组

//search方法:获取某个字符的索引值
var str = '水面清圆,一一风荷举';
	console.log(str.search('一'));//返回第一个字符的索引
//split方法:将字符串通过某个字符进行切割
	var str = '争渡,争渡,惊起一滩鸥鹭';
	var arr = str.split('争');
	var arr1 = str.split('');//空字符串切割,获得字符串中每一个字符
	console.log(arr);
	console.log(arr1);

Python学习 Day29 JS字符串


(四)substring与substr方法

  • substring方法:主要作用是在父串中,切出一个子串
    语法: str.substring(起始索引值,结束索引值) 【包含起始索引值,不包含结束索引值】
  • substr方法:主要作用也是从父串中,切出一个子串
    语法 str.substr(起始索引值,长度)
  • substring与substr方法:功能相近【切割出一个新的子串,不影响原字符串】,只不过传递参数不同
//substring方法:可以切割出一个新的字符串,返回一个新字符串,对于起始字符串没有影响
	var str = '自古逢秋悲寂寥,我言秋日胜春朝,晴空一鹤排云上,便引诗情到碧霄';
	var newStr = str.substring(8,15);
	console.log(newStr);
//sunstr方法:从父串中切割出一个子串,返回一个新字符串,对于起始字符串没有影响
	var str = '自古逢秋悲寂寥,我言秋日胜春朝,晴空一鹤排云上,便引诗情到碧霄';
	console.log(str.substr(8));
	console.log(str.substr(8,3));//从索引值为8的字符开始,切割三个字符

Python学习 Day29 JS字符串


(五)replace与match方法

  • replace方法:对字符串中某个符合条件的字符进行替换
  • match方法:匹配出某个字符串中符合条件的【第一个】字符,返回一个数组
//replace方法:将某个字符串中符合条件的字符进行替换,返回一个新字符串,不影响原字符串
	var str = '小楼昨夜又东风,故国不堪回首月明中';
	var newStr = str.replace('小楼','高楼');
	console.log(newStr);
//match方法:可以将某一个字符串中符合条件的第一个字符匹配出来,返回一个数组
	str = '雕栏玉砌应犹在,只是朱颜改';
	var arr = str.match('朱颜');
	console.log(arr);

Python学习 Day29 JS字符串


(六)练习

练习一

  • 实战练习一:声明一个函数rev(str),函数功能如下:
    比如:rev(‘我爱你北京’) 功能:返回的结果是倒置后的字符串

方法一:倒置遍历

//方法一
	//声明函数
	function rev(str){
		//累加器
		var result = '';
		for(var i = str.length -1;i >= 0;i--){
			result += str[i];
		}
		return result;
	}
	//调用函数
	var newStr = rev('我爱你北京');
	console.log(newStr);

Python学习 Day29 JS字符串
方法二:字符串与数组的相互转换

//方法二
	function rev(str){
		//字符串的split方法可以将字符串转换为数组
		var arr = str.split('');
		//数组的reverse方法可以将数组元素进行倒置
		arr.reverse(arr);
		//join方法:可以将数组转换为字符串
		var result = arr.join('');
		//返回结果
		return result;
	}
	//调用函数
	var result = rev('小楼昨夜又东风');
	console.log(result);

Python学习 Day29 JS字符串


练习二

实战练习二:封装一个函数changeString(str) 功能:将字符串中英文进行大小写转换

//将英文字母大小写进行转换
	//声明函数
	function changeString(str){
		//无非大写变小写,小写变大写
		//累加器
		var result = '';
		for(var index = 0;index < str.length;index++){
			//获取到全部大写英文字母
			if(str[index] < 'a'){
				//进入这个条件分支的一定是大写字符
				result += str[index].toLocaleLowerCase();
			}else{
				//进入这个分支的一定是小写字符
				result += str[index].toUpperCase();
			}
		}
		return result;
	}
	//调用函数
	var result = changeString('IlikeBeijing');
	console.log(result);

Python学习 Day29 JS字符串


练习三

实战练习三

  • 编写一个程序:设计一个函数fun(str),功能:将每个英文单词的首字母变为大写
    比如:fun(‘i like beijing’) 返回结果 I Like Beijing
//声明函数
	function fun(str){
		//获取到实参中每一个英文单词
		var arr = str.split(' ');
		console.log(arr);
		//累加器
		var result = '';
		//循环遍历数组:获取到每一个英文单词
		for(var i = 0 ; i < arr.length ; i++){
			result += arr[i][0].toUpperCase() + arr[i].substr(1);
		}
		return result;
	}
	//调用函数
	var newStr = fun('i like beijing');
	console.log(newStr);

Python学习 Day29 JS字符串

上一篇:【机试备考】Day29-众数 | 数学问题


下一篇:「暑期集训day29」转轴