zoukankan      html  css  js  c++  java
  • 面向对象

    面向对象
      1、字符串类String
          length                 获取字符串中字符的长度  str=’hello’
          indexOf(string)         获取某字符在字符串中出现的位置
          substr(num1,[num2]) 字符串的截取,num1开始位置,num2结束位置
          toLowerCase()         转化为小写
          toUpperCase()         转化为大写
          replace(str1,str2)    字符串替换,str1代表要替换的字符串,str2代表替换后的字符   串
    
          var str = 'hello,javascript';
          document.write('原字符:'+str);
          document.write('<hr>');
          document.write('字符长度:'+str.length);
          document.write('<hr>');
          document.write('替换后的字符:'+str.replace('javascript','php'));
    
      2、日期类Date
          getYear()        获取年份(会有兼容性的问题),从1900年1月1日
          getFullYear()    获取完整年份
          getMonth()    获取月份(0-11)
          getDate()         获取天数(1-31)
          getDay()        获取星期几
          getHours()         获取小时
          getMinutes()    获取分钟
          getSeconds()     获取秒数
          getMilliseconds() 获取毫秒数
    
          var date = new Date();
          document.write('当前年月日:'+date.getFullYear()+'-'+(date.getMonth()+1)+'-'+date.getDate());
    
      3、数学类 Math
          ceil(数值)            获取大于或等于该数的最小整数  19.98
          floor(数值)            获取小于或等于该数的最大整数
          min(数值1,数值2) 返回最小数
          max(数值1,数值2) 返回最大数
          pow(数值1,数值2) 返回数值1的数值2次方  pow(2,2)  4
          random()             返回随机数(0-1)
          round(数值)        四舍五入
          sqrt(数值)            返回平方根  16  4
    
          document.write('ceil函数:'+Math.ceil(19.98));
          document.write('<hr>');
          document.write('min方法:'+Math.min(10,20,30));
          document.write('<hr>');
          document.write('随机数:'+Math.random());
    
      2自定类的定义
    
          面向对象过程中常用的几个关键词
          alert( p.constructor );         constructor:调用对象的构造器
          alert( typeof p );             typeof:类型
          alert( p instanceof person );     instanceof:判断某个对象是否属于某个类
    
          深入理解this指针
          function test(){
          this.i=100;
          }
          i=10;
          test();
          alert(this.i);//100;在js全局变量作用域中,this指向window对象this.i  ===  window.i
    
          1、构造器方式
          function 类名() {}
          在js中是没有类的定义语句的(如class),那么在js中,当我们定义一个函数,系统会默认该函数为同名类下的构造函数,我们也可以把这个函数称之为构造器。
          以上例子说明,当我们创建一个Person函数时,系统会默认认为,该函数是Person类下的构造函数,我们也可以称之为Person的构造器
    
         实际应用:如何通过对象作为返回值,返回一个函数的四则运算?
          function display(first,second) {
          var count = new Object();
          count.jia = first+second;
          count.jian = first-second;
          count.cheng = first*second;
          count.chu = first/second;
          return count;
          }
          var obj = display(200,100);
          alert('相加:'+obj.jia+'相减:'+obj.jian+'相乘:'+obj.cheng+'相除:'+obj.chu);
    
         delete方法
          function Person() {}
          var p1 = new Person();
          p1.name = 'wangcai';
          p1.age = 30;
          p1.addr = '广州市';
    
          delete p1.addr;
          for(var i in p1) {
          document.write(p1[i]+'<hr>');
         }
    
        原型对象:当我们加载一个函数构造器,会自动在内存创建一个对象,我们把这个对象就称之为原型对象。在Person构造中,存在一个prototype的属性,该属性指向Person的原型对象,同样,在Person原型对象中,也存在一个属性constructor,指向我们的Person构造器。
        原型对象的功能?
        当我们通过构造器或构造函数创建一个对象后,为其属性进行复制,当我们调用对象的某一个属性时,其首先在对象内部寻找该属性,如果寻找不到,那么将到该构造器的原型对象中去寻找
        应用:
        function Person() {} //类的定义
        var p1 = new Person(); //对象的定义
        p1.name = 'zhangsan';
        p1.age = 23;
        //通过原型添加的方式添加address属性
        Person.prototype.address = '广州市传智播客';
        //通过原型添加的方式添加speak方法
        Person.prototype.speak = function() {
        alert(this.name+'在说话');
        }
        alert(Person.prototype.constructor.prototype.constructor.prototype.constructor);
    
      4、闭包的作用
      1)可以调用局部变量
      2)闭包会一直驻留在内存中
      由于闭包会导致变量以及函数一直驻留在内存中,所以可能会引起内存泄漏,所以不用时,请置空:null(上题请设置test=null)
    
      call与apply方法主要功能有两个:功能呢一样,传递参数形式不同
      1、改变内部的this指向
      2、执行函数
      color.call(this);//color.call(this,参数1,参数2,);
      size.apply(this);//size.apply(this,[参数1,参数2,])
  • 相关阅读:
    C#跨窗体操作(引用传递)
    C#中使用自定义消息
    WebService基于SoapHeader实现安全认证[webservice][.net][安全][soapheader]
    C#webBrowser实现在新选项卡打开链接
    ASP.NET FormsAuthentication跨站点登录时绝对地址返回的问题
    winform 实现TextBox 关键字智能提示
    SQL批量上传海量数据的存储过程
    优化SQL 语句 in 和not in 的替代方案
    (转)CMMI+人性化管理=软件流程改善成功之道
    两个ComboBox互相联动的一种解决方法
  • 原文地址:https://www.cnblogs.com/yexiangwang/p/5205943.html
Copyright © 2011-2022 走看看