`
zhanchaojiang
  • 浏览: 112979 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JavaScript的静态变量和实例属性的实现

阅读更多

Static Variable   

     特点是可以通过函数名直接访问,也可以通过对象实例访问并被所有实例共享,对它的修改会影响到所有的实例,类似于java里卖弄的静态变量。
Instance Property(实例变量?):
    特点是只对当前实例有效。

Static Variable的例子:
function doSum(x, y){
doSum.sum = doSum.sum + x + y;
return doSum.sum;
}

doSum.sum = 0;//定义static variable

alert(doSum(1,1));//结果=2
alert(doSum(1,1));//结果=4

var o1 = doSum(1,1);
var o2 = doSum(1,1);
alert(o1);//结果=6
alert(o2);//结果=8

 

Instance Property的例子:

var o1 = new Object();
o1.yes = true;

var o2 = new Object();
o2.no = false;

alert(o1.yes);//结果=true
alert(o1.no); //结果=undefined
alert(o2.yes);//结果=undefined
alert(o2.no); //结果=false看看静态方法有什么不同:

function doSum(){ }

doSum.show = function(){ return "111111";}

var o = new doSum();

alert(o.show());//结果报错:o.show is not a function

alert(doSum.show());//结果=11111看起来好像静态方法不能通过实例来调用哦。

分享到:
评论

相关推荐

    JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析

    类的静态方法、静态变量、实例方法和实例变量是构建类的关键组成部分。这些特性使得JavaScript能够更好地支持面向对象编程。 1. **类的静态方法**: - 类的静态方法是直接绑定到类本身而不是类的实例上的函数。...

    JavaScript面向对象之私有静态变量实例分析

    下面的代码展示了如何在JavaScript中实现私有静态变量: ```javascript var JSClass = (function() { // 私有静态变量 var privateStaticVariable = "私有静态变量"; // 私有静态方法 var ...

    EXT dojochina Ext类实例属性.rar

    EXT dojochina Ext类实例属性是一个关于EXT框架在JavaScript中的使用的主题,主要涉及EXT库中的类和实例属性。EXT是一个强大的JavaScript库,用于构建富客户端应用程序,它提供了丰富的组件和布局管理,使得Web应用...

    《突破JavaScript编程实例五十讲》源文件

    同时,原型和原型链的概念也会被提及,它们是JavaScript实现继承和共享属性的关键机制。 函数是JavaScript中复用代码的重要手段,函数表达式、函数声明、箭头函数、闭包等都是JavaScript中独特的函数概念。此外,书...

    (js)静态与非静态方法

    在JavaScript中,静态方法与非静态方法是面向对象编程中的两个基本概念,它们在类的定义和实例化过程中扮演着重要角色。理解这两者之间的区别对于编写高效、可维护的代码至关重要。 ### 静态方法 #### 定义 静态...

    JavaScript中的私有/静态属性介绍

    总的来说,私有属性和静态属性是JavaScript实现封装和数据保护的关键策略。通过巧妙地利用闭包和原型链,我们可以创建出既安全又灵活的对象模型。在实际开发中,理解并掌握这些技术对于编写高效、可维护的JavaScript...

    js面向对象之静态方法和静态属性实例分析

    JavaScript是一种基于原型的面向对象编程语言,它允许我们创建具有属性和方法的对象。在JavaScript中,面向对象编程涉及类的概念,尽管JavaScript并没有真正的类,但它提供了构造函数来模拟类的行为。在面向对象的...

    javascript 实例精讲

    JavaScript的对象可以拥有属性和方法,是实现面向对象编程的基础。 7. DOM操作:在网页中,JavaScript可以通过Document Object Model(DOM)与HTML元素进行交互。通过DOM,我们可以选择、修改或添加HTML元素,实现...

    JavaScript教程及实例讲解.txt

    JavaScript的出现极大地丰富了网页的表现形式,使得网页不再局限于静态内容,而是能够实现动态交互。与Java不同,JavaScript是一种解释型语言,可以在多种平台上运行,无需编译即可直接执行。这使得开发者能够在不同...

    Javascript 类与静态类的实现

    在JavaScript中,静态类通常是指没有实例化,只提供静态方法和属性的类。我们可以通过在类定义外部创建一个对象来实现静态类,这个对象将包含所有的静态方法和属性: ```javascript var StaticClass = { ...

    [javascript]实例大全

    通过原型链,一个对象可以访问其原型对象的属性和方法,实现属性的共享和继承。 4. **事件与DOM操作**:JavaScript可以监听和响应用户的操作,如点击、滚动、输入等,这些被称为事件。DOM(文档对象模型)是HTML和...

    javascript网页特效实例大全

    本资源“javascript网页特效实例大全”聚焦于JavaScript在实现网页特效上的应用,通过丰富的实例帮助开发者深入理解和掌握JavaScript的各种特效技巧。 1. **基础概念**: - DOM(Document Object Model):...

    JavaScript精彩实例教程

    JavaScript还支持原型链机制,使得对象可以继承其他对象的属性和方法。ES6引入的类语法是对面向对象编程的一种更简洁的表示,但本质上仍基于原型。 数组是存储多个值的数据结构,JavaScript提供了多种操作数组的...

    程序天下:JavaScript实例自学手册

    9.9 JavaScript遍历table的行和列 9.10 表格按回车自动生成新行 9.11 单击单元格背景变色 9.12 单击表格某行后其他行隐藏 9.13 单击表头实现表格排序 9.14 单击单元格显示行的详细信息 9.15 表格设置为“100%”时...

    《JavaScript动态网页设计经典实例教程》

    10. **TypeScript**:作为JavaScript的超集,提供了静态类型检查和其他高级特性,有助于写出更健壮的代码。 通过对这本书的学习,你不仅能够掌握JavaScript的基础知识,还能了解如何将这些知识应用到实际的动态网页...

    JavaScript实例

    在"JavaScript实例"这个主题中,我们探讨的是如何通过JavaScript代码实现各种功能。JavaScript实例通常涵盖以下几个方面: 1. **变量与数据类型**:JavaScript支持多种数据类型,包括基本类型(如字符串、数字、...

    突破JavaScript编程实例五十讲

    - 类与继承:探讨类的定义、继承和多态,以及类的静态属性和方法。 - 接口与抽象类:讲解在JavaScript中模拟接口和抽象类的实现策略。 9. **错误处理与调试** - 错误类型与try...catch:了解JavaScript中的错误...

    javascript面向对象特性代码实例.docx

    - **方法一**(原型链继承):通过调用父构造函数或者使用`call`或`apply`方法,将父类的属性和方法复制到子类的实例上。这种方法不能实现多继承,且`instanceof`运算符返回的结果可能不准确。 - **方法二**(原型...

    JavaScript 网页开发实例教程(PDG)

    2. **基于原型**:JavaScript的对象是基于原型的,每个对象都有一个原型链,通过原型链可以实现属性和方法的继承。 3. **函数即对象**:在JavaScript中,函数是第一类公民,可以作为变量赋值,也可以作为参数传递,...

Global site tag (gtag.js) - Google Analytics