js中面向对象的写法

        function Circle(r){
            this.r = r;
        }//构造(实例对象的)函数[思路二:这是一个类]

        Circle.PI = 3.14159; //属性

        Circle.prototype.area = function (){  //方法
            return Circle.PI*this.r*this.r;
        }
        var c = new Circle(5.0);//对象实例化+传参  [思路二:这是类的实例化]
        alert( c.area() );  //return (3.14159*5*5)
时间: 2024-10-10 05:17:35

js中面向对象的写法的相关文章

js中(function(){})()的写法用处

http://blog.csdn.net/u010958922/article/details/47007589 js中(function(){})()的写法用处 http://www.cnblogs.com/lunawzh/p/5274474.html http://www.jb51.net/article/29590.htm 从源码中可以看出jQuery.extend和jQuery.fn.extend是同一个方法,但是具体的作用 却不一样.因为在调用jQuery.extend 和jQuery

JS 中面向对象的5种写法和拓展JS对象的写法

面向对象的JAVA  最开始当然是对象的定义了 收集了以下的五种写法 //第1种写法 function Circle(r) { this.r = r; } Circle.PI = 3.14159; Circle.prototype.area = function() { return Circle.PI * this.r * this.r; } var c = new Circle(1.0); alert(c.area()); //第2种写法 var Circle = function() {

js中面向对象(创建对象的几种方式)

1.面向对象编程(OOP)的特点: 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有的对象下继承出新的对象 多态:多对象的不同形态 注:本文引用于 http://www.cnblogs.com/yuxingyoucan/p/5797142.html 一.创建对象的几种方式 javascript 创建对象简单的来说,无非就是使用内置对象或各种自定义对象,当然还可以使用JSON,但写法有很多,也能混合使用. 1.工厂方式创建对象:面向对象中的封装函数(内置对象) function cr

js中if else写法优劣

在项目的js文件中看到有如下两种写法,如图: 支持第一种写法的理由是:如果以后有多层判断,当条件第一次不满足条件时就直接return false,以后的判断就不需要执行,可以减少不必要的代码校验. 支持第二种写法的理由是:如果以后有多层判断,第一种就会出现多个if else判断,代码写法看起来麻烦,而第二种需要写if语句即可. 我是支持第一种写法.不过我觉得支持第二种写法的理由也说得挺好. =====================================================

js中面向对象编程

一.理解对象: 第一种:基于Object对象 var person = new Object(); person.name = 'My Name'; person.age = 18; person.getName = function(){ return this.name; } 第二种:对象字面量方式(比较清楚的查找对象包含的属性及方法) var person = { name : 'My name', age : 18, getName : function(){ return this.n

js中函数的写法

js提供了灵活的函数写法,我们常见的函数写法和调用可能是: function ask(){ console.log(1); } ask(); 这样就完成了函数的定义和调用,司空见惯. 还有js里面的匿名函数我们也不陌生,匿名函数的定义和调用: 1 (function(){console.log(1)})(); 2 (function(){console.log(1)}()): 我们看到匿名函数定义之后立即就被引用了,这其实是立即执行的函数表达式,例如 1 (function(){console.

js 中面向对象的多态

什么是多态: 实际上是不同对象作用与同一操作产生不同的效果.多态的思想实际上是把"想做什么"和"谁去做"分开,多态的好处是什么呢?为什么要多态?我们来看看 Martin Fowler 在<重构:改善既有代码的设计>里写到: 多态的最根本好处在于,你不必再向对象询问"你是什么类型"而后根据得到的答 案调用对象的某个行为--你只管调用该行为就是了,其他的一切多态机制都会为你安 排妥当. 换句话说,多态最根本的作用就是通过把过程化的条件分支

JS中面向对象的,对象理解、构造函数、原型、原型链

6.1 理解对象 6.1.1 对象属性类型 ECMS属性有两种类型:数据属性和访问器属性 1 数据属性 [[configurable]] 表示能否通过Delete 删除属性从而从新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性.对象上定义的属性默认值为true [[enumerable]] 表示能否通过for-in循环返回属性.直接在对象上定义的属性,它们的这个特性默认值为true [[writable]] 表示能否修改属性值.像前面例子中那样直接在对象上定义的属性,它们默认值为t

js中面向对象

继承方式: 1.拷贝继承:通用型  有new无new都可以用 2.类式继承:new构造函数 3.原型继承:无new的对象 属性继承:调用父类的构造函数call 方法继承:用for in的形式 拷贝继承(jq也用拷贝继承) var a = { name: '小米' }; //拷贝继承 function extend(obj1, obj2) { for (var attr in obj2) { obj1[attr] = obj2[attr]; } } //原型继承 var b=cloneObj(a)