藏经阁

佛说:前世的五百次回眸才能换得今生的一次擦肩而过, 那么,我要用多少次回眸才能真正住进你的心中?(——席慕蓉)

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
三、数组(Array)对象
JavaScript用数组Array来保存具有相同类型的数据。ArrayJavaScript的对象,因此具有属性和方法。
新建数组:
(1)    新建一个长度为零的数组
var 变量名 = new Array();
(2)    新建一个长度为n的数组
var 变量名 = new Array(n);
(3)    新建一个指定长度的数组
var 变量名 = new Array(元素1,元素2,元素3……);
 
 
var a1 = new Array(“a”, “b”, “c”, “d”);
var a2 = new Array(“m”, “n”);
var a3 = new Array(“X”, “Y”, “Z”);
var a4 = new Array(“A”, “B”, “C”);
var a5 = new Array(“L”, “M”, “N” , “O”);
var a5 = new Array(“L”, “M”, “N” , “O”);
var a7 = new Array(“X”, “Y”, “Z”,“C”,“B”);
 
数组常用属性和方法
属性或方法
 
 
constructor
数组对象的函数原型
a1.constructor 结果
function Array(){[native code]}
length
数组长度
var l = a1.length 结果14
prototype
添加数组对象的属性
 
concat(数组2,数组3…)
合并数组
a1.concat(a3,a2) 结果a1
数组a,b,c,d,x,y,z,m,n
join(分隔符)
将数组转换为字串
var s = a1.join(“-”) 结果s“a-b-c-d”
pop()
删除最后一个元素,返回最后一个
var r1 = a1.pop();结果:a1为数组a,b,c ; r1“d”
push(元素1,元素2…)
添加元素,返回数组的长度
var r2 = a2.push(“o”,“p”,“q”);
结果 a2 为数组m,n,o,p,q
     r25
shift()
删除第一个元素,返回第一个元素
var r3 = a3.shift();
结果 a3为数组y,z
     r3 “X”
unshift(元素1,元素2,…)
添加元素至数组开始处
a4.unshift(“I”,“J”,“K”)
结果a4为数组I,J,K,A,B,C
slice(开始位置,[结束位置])
从数组中选择元素组成新的数组
var r5 = a5.slice(1,3);
结果 r5 为数组M,N
splice(位置,多少[,元素1,元素2,……])
从数组中删除或替换元素
a5.splice(1,2) 结果a5为数组L,O
a6.splice(1,2, “I”,“J”,“K”)结果a6为数组L,I,J,K,O
sort(比较函数)
排序数组
参见例3-1
reverse()
倒序数组
a7.rewerse() 结果a7为数组B,C,Z,Y,X
 
 
、字符串(String)对象
字符串对象是JavaScript最常用的内置对象,当使用字符串对象时,并不一定需要用关键字new。任何一个变量,如果它的值是字符串,那么改变量就是一个字符串对象。
1、使用字符串变量
var myString = “This is a sample”; var myString = new String(“This is a sample”); 等效
2、字符串相加
var myString = “This is” + “a sample”;
3、在字符串中使用单引号、双引号及其他特殊字符
JavaScript的字符串既可以使用单引号,也可以使用双引号,但是前后必须一致。
4、比较字符串是否相等
直接使用逻辑比较符“= =”就可以了。
5、字符串与整数、浮点数之间的转换
将字符串转换为整数或浮点数,使用函数 parseInt(s,b) parseFloat(s) 就可以了。其中s表示所要转换的字符串,b表示要转换成几进制的整数。
字符串对象的属性
 
 
 
constructor
字符串对象的函数原型
myString.constructor 结果
function String(){[native code]}
length
字符串长度
myString.length 结果17
prototype
添加字符串对象的属性
字符串变量名.prototype.新加属性名 = 自定义方法名
 
function newF() {……}
var mys = new String();
mys.prototype.newF = newF;
 
字符串对象中有关字符串转换为HTML元素的方法
anchor(“锚点名”)
产生HTML锚点
link(href字符串)
产生HTML链接
 
 
 
 
有关处理字符串内容的方法
 
 
示例var myString = “This is a sample”
charAt(位置)
字符串对象在指定位置处的字符
myString.charAt(2) 结果为“I
charCodeAt(位置)
字符串对象在指定位置处的字符的Unicode值
myString.charCodeAt(2) 结果为“i
indexOf(要查找的字符串)
要查找的字符串在字符串对象中的位置
myString.indexOf(“is”) 结果2
lastIndexof(要查找的字串)
要查找的字符串在字符串对象中的最后位置
myString.lastIndexOf(“is”) 结果5
subStr(开始位置[,长度])
截取字符串
myString.subStr(10,3) 结果“sam
字符串对象.subString(开始位置,结束位置)
分隔字符串到一个数组中
myString.subStr(5,9) 结果“is a
split([分隔符])
分隔字符串到一个数组中
var a=myString.split(“ ”)结果
a[0]= “This”,a[1]= “is”,a[2]= “a”,a[3]= “sample”
replace(需替代的字符串,新字串)
替换字符串
myString.replace(“sample”, “apple”)
结果 “This is a apple”
toLowerCase()
变为小写字母
myString.toLowerCase()结果“this is a sample”
toUpperCase()
变为大写字母
myString.toUpperCase()结果“this is a sample”
 
4-1 检查字符串是否是有效的
目的:字符串对象中有关处理字串内方法的应用
<html>
       <head>
                     <script language="JavaScript">
                                   function isValidString(inputString) {
                                                 var validChars = "0123456789abcdefghijklmnopqrstuvwxyz_-";
                                                 var isValidString = true;
                                                 var aChar;
                                                 for(i=0;i<inputString.length && isValidString == true;i++) {
                                                               aChar = inputString.toLowerCase().charAt(i);
                                                               if(validChars.indexOf(aChar) == -1) {
                                                                             isValidString = false;    
                                                               }
                                                 }
                                                 return isValidString;     
                                   }
                                   //测试isValidString函数
                                   var aString1 = "abcd$gggg";
                                   var aString2 = "_ab1-cd2_";
                                   var aString3 = "12.34";
                                  
                                   document.write(aString1+""+(isValidString(aString1)?"有效的":"无效的")+"字符串。<br>");
                                   document.write(aString2+""+(isValidString(aString2)?"有效的":"无效的")+"字符串。<br>");
                                   document.write(aString3+""+(isValidString(aString3)?"有效的":"无效的")+"字符串。<br>");              
                     </script>      
       </head>
      
       <body>
                           
       </body>
</html>
 
4-2 检测输入参数是否在指定的两个数之间
目的:字符串与数字的转换
       <script language="JavaScript">
              function isRange(s,s1,s2) {
                            if(s1==null && s2==null) {
                                   return true;    
                            } else if((s1==null)&&parseFloat(s)>parseFloat(s2)) {
                                   return false;   
                            } else if((s2==null)&&parseFloat(s)< parseFloat(s1)) {
                                   return false;   
                            } else if(parseFloat(s)<parseFloat(s1)||parseFloat(s)>parseFloat(s2)) {
                                   return false;   
                            } else {
                                   return true;    
                            }
              }
              document.write(100+(isRange(100,0,200)?"":"不在")+"0~200范围内。<br>");     
              document.write(100+(isRange(100,null,99)?"":"不在")+"<=99范围内。<br>");
              document.write(100+(isRange(100,50,null)?"":"不在")+">=99范围内。");
       </script>  
posted on 2007-08-21 20:29  小手冰凉  阅读(548)  评论(0编辑  收藏  举报