ECAM script - 核心语法4-2

302 阅读2分钟

1、StringAPI:只有字符串可以使用的函数,特点:只读!

1、转义字符:\
	作用:
	   1、将字符串中和程序冲突的符号编译为原文
		"\""	'\''
	   2、包含特殊功能的符号:
		换行:\n
		制表符:\t
	  *3、输出unicode编码的字符:
		\uXXXX:第一个汉字:4e00		-	ascii:19968
			最后一个汉字:9fa5		-	ascii:40869

2、*大小写转换:将字符串中的每个英文统一的转为大写 或 小写
	何时:只要程序不区分大小写,就要【先统一】的转为大写 或 小写,再比较(验证码)
	如何:
		大写:var upper=str.toUpperCase();
		小写:var lower=str.toLowerCase();

3、获取字符串中指定位置的字符:str.charAt(i)	还不如直接  str[i]

4、获取字符串中指定位置的字符的ascii码:
	var ascii=str.charCodeAt(i);
      根据ascii码在转回原文:
	var 原文=String.fromCharCode(ascii);

5、***检索字符串:检查索引:获取关键字的下标
	var i=str/arr.indexOf("关键字",starti);
	从starti位置开始,查找右侧【第一个关键字】的位置
	特殊:
	   1、starti可以省略不写,从0开始查找
	   2、返回值:找到了,返回的第一个关键字的第一个字符的下标
		    *没找到,返回-1,我们不关心下标为多少,我只关心下标为不为-1
	         作用:判断有没有,以后如果不想有重复的,就一定要用上他
	   3、此方法不光字符串可以使用,数组也可以使用,后期才为数组添加上的,老IE上的数组就没有此方法
	   4、笔试题:默认只能获取到第一个关键字的下标,如何才能获取到所有的关键字的下标
		var str="no zuo no die no can no bibi";
		var i=-1;
		while((i=str.indexOf("no",i+1))!=-1){
			console.log(i);
		}

6、*截取字符串:3种
	*var subStr=str/arr.slice(starti,endi+1);//用法和数组的slice一摸一样
		    str.substring(starti,endi+1);//几乎和slice一致,不支持附属参数
		  *str.substr(starti,n);//n代表截取的个数,不必考虑含头不含尾

7、拼接字符串:var newStr=str.concat(新字符串,...);//还不如+运算

8、*替换字符串:本身强大,但是必须搭配正则表达式
	var newStr=str.replace("关键字","新内容");

9、*****切割/分割字符串:
	var arr=str.split("任意切割符");
	作用:将字符串=>数组
	特殊:1、切割后,切割符就不存在了
	           2、切割符"",切散每一个字符

扩展:如何使用JS生成元素:3步

1、创建空标签:var elem=document.createElement("标签名");

2、为此元素设置必要的属性 或 事件
	elem.属性名="值";
	elem.on事件名=function(){}

3、渲染页面,上DOM树:
	父.appendChild(新);

ECMAscript - 核心语法1 - 掘金 (juejin.cn)
ECMAscript - 核心语法2 - 掘金 (juejin.cn)
ECAM script - 核心语法3 - 掘金 (juejin.cn)
ECMA script - 核心语法4-1 - 掘金 (juejin.cn)
ECMA script - 核心语法5 - 掘金 (juejin.cn)
ECMA script - 核心语法6 - 掘金 (juejin.cn)
ECMA script - 核心语法7-1 - 掘金 (juejin.cn)
ECMA script - 核心语法7-2 - 掘金 (juejin.cn)
ECMAscript 8 - 掘金 (juejin.cn)
ES5&ES6 - 掘金 (juejin.cn)