一、如何创建字符串:
1、直接通过声明变量的方法来创建字符串:
var s=“abcdefg”;
console.log(typeof(s)); //string
2、利用字符串的构造函数进行声明:
格式:var 变量名=new String(“字符串”);
var w=new String(“今天石家庄下雪了”);
window.alert(w);
二、字符串的属性:
length,返回字符串中有效字符的个数,也就是“串长”。
注意:转义字符在字符串中算一个字符。
var str=“abc\ndefg”;
console.log(str.length); //8
三、如何获得字符串中的任意一个字符:
字符串中的字符和数组元素一样,也是具有下标的,这个下标从0开始。
允许字符串像引用数组元素一样引用其中的字符:str[0] 表示字符串str中的第一个字符。
四、字符的ASCII码:
“A”的ASCII码:65
“a”的ASCII码:97
“0”的ASCII码:48
“ ”的ASCII码:32
字符串的方法 charCodeAt(下标):返回字符串中指定下标的字符的ASCII码。
var s=“abcdefg”;
var t=s.charCodeAt(0); //返回字符串s中第一个字符a的ASCII码
var z=s.charCodeAt(s.length-1); //返回字符串s中最后一个字符g的ASCII码
五、对字符中的字母进行大小写切换:
1、toUpperCase():将小写字母转换为大写字母。
2、toLowerCase():将大写字母转换为小写字母。
例:
var str=new String("Chinese");
var s=str.toUpperCase();
console.log(s); //CHINESE
var t=str.toLowerCase();
console.log(t); //chinese
六、从字符串中寻找子串:
- slice(start,end):将起始位置到结束位置的字符组成一个新串,结束位置的字符不包括在
结果新串内部。 - substr(start,length):从字符串中start开始的位置处截取length个字符组成一个新串。
- substring(start,end):同slice()一致。
- charAt(下标):返回字符串中指定下标的字符。
注意:s.charAt(0) 和 s[0] 是一样的。
七、字符串的连接:
concat(str1,str2,…):将字符串首尾相连组成一个新串。
例:
var a=“Hello,”;
var b=“Katty”;
console.log(a.concat(b));
console.log(a+b);
八、判断一个子串是否在字符串中:
indexOf(子串):判断子串在字符串中的位置,若存在返回子串第一个字符在字符串中的
下标,若不存在返回-1。
例:
var s=“abcdefg”;
console.log(s.indexOf(“cde”)); //2
console.log(s.indexOf(“abc”)); //0
console.log(s.indexOf(“cdea”)); //-1
例:
var x=[10,20,30];
x[0]=100;
console.log(x); //[100,20,30] 说明赋值成功
var y=new String(“abcdefg”);
y[0]=“w”;
console.log(y); //abcdefg 说明赋值不成功
九、从ASCII码中还原字符:
String.fromCharCode(ASCII码)
这是一个利用String引出的方法,被称为静态方法。
加密算法:
function jiami(){
// 获取用户所写的内容(明文)
var message=document.forms[0].ming.value;
var r="";
for(var i=0;i<message.length;i++){
// 获取下标为i的字符
var char=message.charAt(i).toLowerCase(); //全部变为小写字母
// 1.获取下标为i的字符的ASCII码
var asc=char.charCodeAt(0);
if(asc>=97 && asc<=97+25){ //判断必须是字母不能使空格和标点
// 2.ASCII码加3
asc=97+(asc-97+3)%26
// 3.将新ASCII码还原回字符
var newChar=String.fromCharCode(asc);
r=r+newChar;
}
}
window.alert("密文:" + r);
}