<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>javascript034.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
</head>
<body>
<!--
需求:去除字符串两端的空格,把字符串变成字符数组,反转功能。
-->
<script type="text/javascript">
//在js中是没有我要求的这几个方法的,所以,都是要求自己实现的。
//并且,我们又不想把字符串作为参数传递,所以我们使用字符串的原型
//给字符串的原型添加功能,就相当于给字符串添加功能
String.prototype.trim = function()
{
/*
分析:
A:this就代表那个带有空格的字符串对象
B:先从头开始找空格,一直往后找,如果没有空格了,就记录该索引
C:从后面开始找空格,一直往前找,如果没有空格了,就记录该索引
D:使用字符串的截取功能截取字符串
*/
//定义开头索引
var start = 0;
//定义末尾索引
var end = this.length - 1;
//从头找空格
while(start<=end && this.charAt(start)==" ")
{
start++;
}
//从后面找空格
while(start<=end && this.charAt(end)==" ")
{
end--;
}
return this.substring(start,end+1);
};
//把字符串变成字符数组
String.prototype.toCharArray = function()
{
/*
A:this还是代表那个调用方法的字符串
B:定义一个字符数组
C:遍历字符串获取到每一个字符
D:把遍历到的每一个字符添加到字符数组中。
E:返回字符数组
*/
//定义字符数组
var chs = new Array(this.length);
//遍历字符串
for(var x=0; x<this.length; x++)
{
chs[x] = this.charAt(x);
}
//返回字符数组
return chs;
};
//字符串反转功能
String.prototype.myReverse = function()
{
/*
A:可以把字符串变成字符数组,因为我刚才写过这个方法
B:在数组中有反转功能
*/
//把字符串转成数组
var arr = this.toCharArray();
//调用数组中的反转功能
return arr.reverse();
};
//定义一个字符串对象
//var str = " hello world ";
//alert("***"+str.trim()+"***");
var str = "hello,js";
//var arr = str.toCharArray();
//alert(arr.toString());
alert(str.myReverse());
</script>
</body>
</html>
JavaScript基础(23)—原型的应用(2)
最新推荐文章于 2024-09-05 16:24:18 发布