1.字符串反转
在练习题中,提示我们可以使用三种方法配合,能顺利让一个字符串反向显示:
- String.prototype.split()
- Array.prototype.reverse()
- Array.prototype.join()
简单的过一下:
- split()方法将一个字符串对象的每个字符拆出来,并且将每个字符串当成数组的每个元素
- reverse()方法用来改变数组,将数组中的元素倒个序排列,第一个数组元素成为最后一个,最后一个变成第一个
- join()方法将数组中的所有元素边接成一个字符串
来看个实例:
function reverseString(str) {
// 第一步,使用split()方法,返回一个新数组
// var splitString = "hello".split("");
var splitString = str.split(""); //将字符串拆分
// 返回一个新数组["h", "e", "l", "l", "o"]
// 第二步,使用reverse()方法创建一个新数组
// var reverseArray = ["h", "e", "l", "l", "o"].reverse();
var reverseArray = splitString.reverse();
// 原数组元素顺序反转["o", "l", "l", "e", "h"]
// 第三步,使用join()方法将数组的每个元素连接在一起,组合成一个新字符串
// var joinArray = ["o", "l", "l", "e", "h"].join("");
var joinArray = reverseArray.join("");
// "olleh"
// 第四步,返回一个反转的新字符串
return joinArray; // "olleh"
}
reverseString("hello"); // => olleh
将上面的方法简化一下,可以写成这样:
function reverseString(str) {
return str.split("").reverse().join("");
}
reverseString("hello"); // => olleh
2.插入,操作
<script type="text/javascript">
var str = '123456789';
alert(str.replace(/(.{10})/g,'$1,'));
</script>
3.表达式
var str = '123789';
a=str.split("").reverse().join("").replace(/(.{3})/g,'$1,').split("").reverse().join("");
if(a.substr(0, 1) == ",") {
// 删除第一个字符
a = a.slice(1);
}
alert(a);