如何用javascript面向对象编程?

来源:悟空问答 编辑:王志 手机版

面向对象是oop思想,javascript里没有面向对象只有面向过程,var Student1=new Object();Student.stuno = 1024;Student.age = 20;Student.getName= function(){   return this.name;};var Student2 = {   name : 'hello js',   age : 24,   getname : function(){       return this.name    }}www.07swz.com防采集请勿采集本网。

如何用javascript面向对象编程?

由热心用户 开源技术交流栈 提供的回答:

比如:做网页轮播效果。效果是必须满足可以在不同的HTML(相同的布局方式)、不同的DOM节点或则同个页面多个轮播效果等。这种时候你就可以考虑封装一个通用的轮播功能,然后实例化(new)该对象以实现效果。其实,面向对象只是一种在编写程序中

要做面向对象程序设计,首先要知道,什么是面向对象的程序设计,对象就是存储一个事物的属性和功能的一块存储空间,在程序设计中,面向对象指的是对一类事物的抽象,比如一个人,我们可以把我们关注的重点几个属性记录下来,比如年龄、身高等等。

推荐两本javascript面向对象的编程书籍: 《面向对象的Javascript》(Object-Oriented JavaScript) 《Javascript高级程序设计(第二版)》(Professional JavaScript for Web Developers, 2nd Edition) 关于javascript的其他书籍,找了资料分享

在es6出来以前,JavaScript很难做到面向对象的设计,因为JavaScript并没有class这样的关键字,但是在es6以后,引入了类与对象的概念,再做面向对象的设计就容易的多了

如果你从javascript来了解面向对象编程,那你很难理解。 因为javascript的function就是既是函数,又是类。 不建议你这么理解面向对象。 你以上代码,第一段是一个类,构造函数有2个参数html,high。 第二段代码是给类boxPlug添加方法。prototype

我们在程序设计时,可以将任何事物抽象成对象,然后进行封装,这就可以认为是最简单的面向对象的设计。

function createUser(user,age){ var obj = new Object(); obj.user = user; obj.age = age; obj.run = function(){ return this.user + this.age +" 正在运行中"; }; return obj; }; user1 =createUser("jason","13"); alert(user1.run());

声明:本内容来自悟空问答,版权归悟空问答所有,本网旨在传播知识,不代表本网赞同以上意见,如有任何问题请与本网联系!

对于面向对象的写法, 从最基础的类开始, javascript就有很多种方法写一个类, 那到底哪种是最佳的呢? 和同事讨论, 认为以下的写法是最OK的.functionClassA(){var_this=this; //这是为了给ClassA的私有类使用本实例var_field1; //private的成员变

!他不支持函数方法2113重载.你之前5261写一个方法.后面再写一个相同名字的方法他默认会把4102上一个方1653法覆盖掉!这种情况和PHP中相同!他不像是C#等语言支持函数重载.根据不同的参数.返回值调用不同的方法! 关于JS是不是面向对象.他不完全是面向对象,他也可以写成类,方法,属性.但是和其它的语言稍有不同!比如var cls={ my:, init:function() { alert(this.my.a); }};window.onload=function(){ cls.init();}调用cls.init();这就是他的类,但是缺少了好多面向对象的一些特性.楼上说的很清楚!所以说他不是完全面向对象面向对象只是一种思路一种解决问题的思路!,function A(name){    this.name = name;    this.sayHello = function(){alert(this.name+”2113 say Hello!”5261);};}function B(name,id){    this.temp = A;    this.temp(name);        //相当4102于1653new A();    delete this.temp;            this.id = id;       this.checkId = function(ID){alert(this.id==ID)};},b.prototype=newa;追问额,能不能再详细点陈述一下本回答被网友采纳,!他不2113支持函数方法重载.你之前写5261一个方法.后面再写一个相同名字的4102方法他默认会把上一1653个方法覆盖掉!这种情况和PHP中相同!他不像是C#等语言支持函数重载.根据不同的参数.返回值调用不同的方法! 关于JS是不是面向对象.他不完全是面向对象,他也可以写成类,方法,属性.但是和其它的语言稍有不同!比如var cls={ my:, init:function() { alert(this.my.a); }};window.onload=function(){ cls.init();}调用cls.init();这就是他的类,但是缺少了好多面向对象的一些特性.楼上说的很清楚!所以说他不是完全面向对象面向对象只是一种思路一种解决问题的思路!,b.prototype=new a;,继承方法一、利用2113call或者apply方法改变this的指针5261,function A(name,age){ this.age = age ? age : 25; this.name = name ? name : '小明' this.say = function(){ alert(this.name + '今年' + this.age + '岁了4102!1653'); }}function B(name,age){ A.apply(this,arguments); }C = new B('小刚',18);C.say();继承方法二、function A(name,age){ this.age = age ? age : 30; this.name = name ? name : '小明' this.say = function(){ alert(this.name + '今年' + this.age + '岁了!'); }}function B(){}B.prototype = new A();var C = new B();C.say();内容来自www.07swz.com请勿采集。

  • JS面向对象编程:b怎么继承a
  • 什么是javascript面向对象编程
  • js面向对象编程
  • javascript 面向对象编程学的怎么样?
  • 请问一下js面向对象编程在网页中什么情况下才需要...
  • javascript的面向对象的编程介绍书籍有哪些
  • javascript面向对象编程问题?
  • js面向对象编程的一个问题
  • Javascript 面向对象的Class, 怎么写最好.
  • javascript面向对象编程指南 练习题答案
  • 最新推荐
    热门推荐