有引号就是字符串类型
空格也算长度
字符串的length不可写
typeof 判断数据类型
var s="a bcadde你好"
// alert(typeof s) //string
// alert(s.length) //10
// alert(s.charAt(3)) //c 获取某一位置的字符串元素
// alert(s.charAt(9)) //超过了字符串的长度-1或者负数,就弹出空值
// alert(s.charCodeAt(3)) //99 //获取字符串元素的编码
不写就是获取第0个
// alert(String.fromCharCode(99)) //c //根据字符编码获取对应字
// alert(String.fromCharCode(20320,22909)) //你好
charCoedAt
0~9 48~57
a~z 97~122
A~Z 65~90
search 找字符第一次出现的位置
var str = 'abcde';
alert(str.search("bc")) // 从左往右找,返回第一次出现的位置
// 找不到返回-1
var str = 'www.baidu.comww';
indexOf() 获取字符串中某个字符的位置,从左往右找
alert( str.indexOf('w') ); /0 第一次出现的位置
alert( str.indexOf('m', 5) ); //12
5表示从第5位开始找后找,不写默认或者负数从第0个开始找
alert( str.indexOf('X') ) //-1 表示没找到
alert( str.indexOf('ww', 2) ); //单个单个数
alert( str.indexOf('ww', 2) ); //单个单个数
例
var str = '伴随着灯光与歌声,一朵硕大的牡丹花出现在观众眼前,“牡丹仙子”在花中跳着优美的舞蹈,观众连连称奇。洛阳籍歌手田华演唱《洛阳牡丹》,赢得热烈掌声。';
var s = '牡丹';
var i = 0;
var m=""
for( ; str.indexOf( s, i ) != -1 ; ){
m+=str.indexOf( s, i )
i = str.indexOf( s, i ) + s.length;
}
alert(m)
while( str.indexOf( s, i ) != -1 ){
alert( str.indexOf( s, i ) );
i = str.indexOf( s, i ) + s.length;
}
alert(m);
lastIndexOf() 从后往前找,第二个参数表示从哪开始找
如果第2个值为负数,默认当成0来处理
var str = '伴随着灯光与歌声,一朵硕大的牡丹花出现在观众眼前,“牡丹仙子”在花中跳着优美的舞蹈,观众连连称奇。洛阳籍歌手田华演唱《洛阳牡丹》,赢得热烈掌声。';
14 26 61
alert(str.indexOf('牡丹', 50)) //61 从左往右找
alert(str.lastIndexOf('牡丹', 38) ); //26
alert(str.lastIndexOf('牡丹', ) ); //14
字符串比较,只比较其第一个
substring 有目标截段
var str="外国的月亮比较圆?"
alert(str.substring(4)) // 亮比较圆? 取光标后的字符串
一个参数情况下,从那一位截取,不要前面的
alert(str.substring(0,2)) //外国 两个参数,截取其间字符
alert(str.substring(2,0)) //外国 交换位置,自动大的参数仍后面
alert(str.substring(-3,2)) //外国 负数当做零处理
alert(str.substring(1,4)) //国的月
不包含结束位置,从起始位置,到结束位置光标前
slice 可以从后面开始截取
alert( str.slice( 2, 0 ) ); //不显示 无substring的交换位置的功能
alert(str.slice(-2)) //圆? 负数从尾部找 取光标后的字符串
alert(str.slice(-4,-2)); //比较 从后面倒着往前来数
toUpperCase() 转换成大写
toLowerCase() 转换成小写
alert(str.toUpperCase())
alert(str.toLowerCase())
<div id="div1" onclick="alert( this.innerHTML.toUpperCase() );"><p>这是一段文字</p></div>
split 切割 切得那个东西没了
被分割成数组[]
var str="www.baidu.com"
alert(str.split(".")) //[www,baidu,com] 以特定字符切割
var str1=”lei”
alert(str1.split()) // ["lei"]
不加分隔符,整个当做一个分割符,装进数组
alert(str1.split("")) ["l","e","i"]
以空字符切,认为字母数字汉子间有空字符串
var str3 = '/www.badiu.com/'; 认为斜杠左边有空的位置
alert( str3.split('/').length ); // [ , www.baidu.com, ]
var str4 = '2016-04-01-23-07';
alert( str4.split('-', 3) ); //[2016,04,01]
3为可选参数,表示可截取的段数
join
----数组的变成字符串
var arr = [ 'aa', 'bb', 'cc' ];
alert( arr.join() ); //"aa,bb,cc"
不写,默认状态下以 ,连接 显示三个字符串
alert( typeof arr.join() ); //string
alert( arr.join().length ); //8 ,也算字符
alert( arr.join('') ); // aabbcc 以空字符串连接,不显示空格
alert( arr.join('').length ) // 6 "aabbcc"
alert( arr.join('-') ); //aa-bb-cc