三、JS【JavaScript弱类型的脚本语言】04

来源:互联网 发布:sql utf8编码转换gbk 编辑:程序博客网 时间:2024/06/05 04:23
1.number对象
  1)创建方式
    A.创建方式1:var 变量=new number(数字); 如--var num=new number(100);
    B.创建方式2: var 变量=数字;  如--var num=100;  【推荐使用】。

  2)常用方法
         A.toString();把数字转换成指定进制形式的字符串。
    如:num.toString(10);---转换成十进制(不写也是十进制)
B.toFixed();指定保留小数位,而且还带四舍五入的功能。
    如:num.toFixed(2);---保留两位小数。
 
2.Math对象(不用创建对象)
  1)常用方法
        A.ceil(数字);向上取整。如:Math.ceil(3.14);  4
B.floor(数字);向下取整。如:Math.floor(3.14); 3
C.random();获取随机数;0---1
        D.round(数字);四舍五入;Math.round(3.74); 4(得到的是整数)

3.Array数组对象
  1)创建方式
         A.方式1:var 变量名=new Array();  创建一个长度为0的数组。
     如:var arr=new Array();
B.方式2:var 变量名=new Array(长度)创建一个指定长度的数组对象。
    如:var arr=new Array(100);
C.方式3:var 变量名=new Array("元素1","元素2"...);给数组指定元素创建数组的对象。
    如:var arr=new Array(1,2,3);
D.方式4:var 变量名=["元素1","元素2"...];【推荐使用】

  2)特点:数组的长度类似java中的集合,可以发生变化,不唯一。
  
  3)常用方法
        A.concat(数组); arr1.concat(arr2);把arr1和arr2的数组元素组成一个新的数组。
  如:var arr1=["1","2","3"]; var arr2=["1","22","33"];---newArr=["1","2","3","1","22","33"];

B.join(字符串);arr.join("*");使用指定的分隔符把数组中的元素拼接。
 如:var arr=["1","2"];arr.join();-----1*2

C.pop();移除数组中的最后一个元素并返回该元素。
 如:var ele=var.pop();----2

D.shift();删除第一个元素并返回
 如:arr.shift();-------1

E.push(元素);将新元素添加到一个数组中,并返回数组的新长度值。
 如:var newLen=arr.push("111");----newLen=新的长度。

F.reverse();反转数组的元素。

G.slice(start,end);截取指定索引的数组。
 如:var arr=[1,2,3];---arr.reverse(1,3);-----2,3(包左不包右)

H.sort(排序方法);排序 如:var arr=[3,1,4];
 arr.sort(sortNumber);  ----正序。
 funtion sortNumber(num1,num2){
    return num1-num2;
 }

I.splice(start,length,"4","5");第一个参数是开始删除元素的 索引值, 第二参数是删除元素的个数,往后的数据就是插入的元素。
 如:var arr=[1,2,5]; arr.splice(2,1,"4","5");---1,2,4,5
 
4.自定义对象(JS无类的概念【函数】)
  1)使用无参的函数创建对象。
    function Person(){}
var p=new Person();  创建了一个Person对象
p.id=110;
p.name="小黄";

  2)使用带参的函数创建对象。
    function Person(id,name){
  this.id=id;
  this.name=name;
  this.say=function(){
     alert(name+"呵呵");
  }
}

  3)使用Object函数创建对象。
    var p=new Object();
p.id=110;
p.name="铁蛋";

  4)使用字面量的方式创建(注意javascript中其他代码的牵扯)
    var p={
  id:110;
  name:"中国";
  say:function(){
     alert(this.name);
  }
}
  
  5)自定义一个数组工具类。
    JS文件代码如下:
var tool=new ArrayTool();
    function ArrayTool(){
//最大值
this.getMax=function(arr){
  var max=arr[0];
  for(var x=0;x<arr.length;x++){
  if(arr[x]>max){
  max=arr[x];
  }   
 }
 return max;
}

this.getIndex=function(arr,target){
var index=-1;
for(var y=0;y<arr.length;y++){
if(arr[y]==target){
index=y;
}
}
return index;
}
    }
调用文件代码如下:
<!-- 调用自定义数组的方法(最大值或索引)-->
    <script src="ArrayTool.js" type="text/javascript"></script>
    <script type="text/javascript">
      var arr=[1,3,4,2];
      document.write("最大值为:"+tool.getMax(arr)+"<br/>");  //4
   
      document.write("该元素索引为:"+tool.getIndex(arr,3));  //1
    </script>

5.prototype原型属性
  1)介绍
        A.prototype是函数(function)的一个必备属性(书面一点的说法是“保留属性”)(只要是function,就一定有一个prototype属性)。
B.prototype的值是一个对象。
C.可以任意修改函数的prototype属性的值。
D.一个对象会自动拥有prototype的所有成员属性和方法。
  2)用法。【也就是工具类改变一下】
    //最大值
    Array.prototype.getMax=function(){
  var max=this[0];
  for(var x=0;x<this.length;x++){
     if(this[x]>max){
    max=this[x];
 }
  }
  return max;
}
//获取元素索引
Array.prototype.getIndex=function(target){
  var index=-1;
  for(int y=0;y<this.length;y++){
     if(this[y]==target){
    index=y;
 }
  }
  return index;
}

  3)练习:给字符串对象添加一个toCharArray的方法,然后再添加一个reverse(反转)
        A.----toCharArray
String.prototype.toCharArray=function(){
  var arr=new Array();
  for(var x=0;x<arr.length;x++){
     arr[x]=this.charAt(x);
  }
  return arr;
}

B.----reverse
String.prototype.reverse=function(){
  var arr=this.toCharArray();
  arr.reverse();
  return arr.join("");  //它是一个字符串!!!
}
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 家用电器接入两相火线后怎么办 手机充电板坏了怎么办 闪电宝商户乱跳怎么办 网易邮箱发错了怎么办 苹果手机邮件无法连接服务器怎么办 好记星平板电脑开不了机怎么办 邮箱里的文件过期了怎么办 小米手机邮件发不了怎么办 有人加我qq邮箱怎么办 文件太大发邮件太慢怎么办 爱又米发信息怎么办 手机上电子邮件己停止运行怎么办 苹果电子邮件密码忘了怎么办 玩游戏时电脑烫怎么办 qq邮箱独立密码忘记了怎么办 qq邮箱中转站容量不足怎么办 qq邮箱忘记密码了怎么办 qq邮箱超大附件过期怎么办 忘记qq邮箱独立密码怎么办 网易邮箱账号忘了怎么办 微信登录密码忘了怎么办 微信太久没登录登录不上怎么办 邮箱独立密码忘记了怎么办 苹果设置id没有邮箱怎么办 苹果手机设置id没有邮箱怎么办 邮箱的附件过期了怎么办 邮箱里的附件过期了怎么办 邮箱中附件过期了怎么办 扣扣邮箱附件过期怎么办 公司网页版邮箱进不去了怎么办 农行客户端密码忘记了怎么办 中国银行客户端密码忘记了怎么办 建行客户端登录密码忘记了怎么办 中国移动客户端密码忘记了怎么办 再歪一点授权码绑定怎么办 网易邮箱号忘了怎么办 忘记支付宝账号和密码怎么办 支付宝账号密码忘了怎么办 发邮箱文件超2g怎么办 报考计算机二级邮箱不存在怎么办 苹果邮箱登录要imap密码怎么办