JavaScript面向对象

一、JavaScript是基于原型(prototype)的面向对象的语言,没有类的慨念;

     var obj = new Object(); 等同于 var obj = {};

     var array = new Array(); 等同于 var array = [];

 

二、JavaScript中的继承: 即简单的从一个对象原型向另一个对象原型复制方法而实现的

     例如:

     function init() {

         var person={}; // 等同于 var person = new Object();

         person.getName = function(){

             alert("person name");

         }

 

         person.getAge = function(){

              alert("person age");

         }

 

          // 创建另一个对象

          var student = {};

          stucent.getStuNum = function(){

               alert("student StuNum");

          }

 

          student.getName = person.getName;

          person.getName = function(){

                alert("person1 rane");

          }

          student.getAge = person.getAge;

          student.getName();

          person.getName();    // person.getName方法被重写,导致打印出 person1 name

     }

     执行结果:

     person name;

     person1 name;

 

三、构造函数:

    function myConstructor(a){

          /*某些代码*/

     }

     等同于: var myConstructor = new Function('a', '/*某些代码*/'); // 该方式有性能问题,不推荐使用

 

四、typeof用法:

if(document.mylist.length != "undefined" ) {} 这个用法有误.

正确的是 if( typeof(document.mylist.length) != "undefined" ) {}

或 if( !isNaN(document.mylist.length) ) {}

 

typeof的运算数未定义,返回的就是 "undefined".

运算数为数字 typeof(x) = "number"

字符串 typeof(x) = "string"

布尔值 typeof(x) = "boolean"

对象,数组和null typeof(x) = "object"

函数 typeof(x) = "function"

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值