js静态属性和静态方法
啥也不说了,直接上代码。。。(就是这么任性)
var Animal = function(){};
Animal.name = "dog";
var a = new Animal();
console.log(a.name);
结果如图 :

很明显这样调用是不可以的,那如果console.log(Animal.name)这样呢?
var Animal = function(){
Animal.name++;
};
Animal.name = 0;
// var a = new Animal();
console.log(Animal.name);

静态方法是指不需要声明类的实例就可以使用的方法
纳尼?结果是这样了滴。。。。。为毛?
那这样呢?
function Animal (){
// alert(Animal.name);
this.say = function(){
console.log(Animal.name);
}
};
Animal.name = "Ev2le0";
var a = new Animal();
a.say();
结果是:

纳尼,哭晕在wc了。。。
算了还是写静态方法吧
function staticClass(){};//声明一个类
//为这个类添加一个静态方法
staticClass.staticMethod = function(){
console.log("this is a static method");
}
//声明一个实例方法
staticClass.prototype.instanceMethod = function(){
console.log("this is a instance method");
}
//尝试调用一下静态方法,分别使用2种方式
var a = new staticClass();
a.staticMethod();
结果是这样滴:

再试一下类名.方法名的调用方式
function staticClass(){};//声明一个类
//为这个类添加一个静态方法
staticClass.staticMethod = function(){
console.log("this is a static method");
}
//声明一个实例方法
staticClass.prototype.instanceMethod = function(){
console.log("this is a instance method");
}
//尝试调用一下静态方法,分别使用2种方式
var a = new staticClass();
// a.staticMethod();
staticClass.staticMethod();
结果是这样子滴:

那调用实例方法能不能用类名.方法名()的形式呢?
staticClass.instanceMethod();
结果是这样子滴:

总结:
1,对于静态方法可以使用类名.方法名()
2,实例方法就只能老老实实的使用对象.方法名()的形式调用了。
js静态属性和静态方法的更多相关文章
- PHP static静态属性和静态方法
这里分析了php面向对象中static静态属性和静态方法的调用.关于它们的调用(能不能调用,怎么样调用),需要弄明白了他们在内存中存放位置,这样就非常容易理解了.静态属性.方法(包括静态与非静态)在内 ...
- php面向对象中static静态属性和静态方法的调用
这篇文章主要介绍了php面向对象中static静态属性和静态方法的调用,实例分析了static静态属性和静态方法的原理与调用技巧,需要的朋友可以参考下 本文实例讲述了php中static静态属性和静态 ...
- php静态属性和静态方法
php静态属性和静态方法 2012-09-29 10:18 1518人阅读 评论(0) 收藏 举报 phpfunction 本php教程主要是学习php中静态属性和静态方法的使用方法和基本的示例. · ...
- static静态属性和静态方法的原理与调用技巧
这篇文章主要介绍了php面向对象中static静态属性和静态方法的调用,实例分析了static静态属性和静态方法的原理与调用技巧,需要的朋友可以参考下 本文实例讲述了php中static静态属 ...
- PHP中的抽象类与抽象方法/静态属性和静态方法/PHP中的单利模式(单态模式)/串行化与反串行化(序列化与反序列化)/约束类型/魔术方法小结
前 言 OOP 学习了好久的PHP,今天来总结一下PHP中的抽象类与抽象方法/静态属性和静态方法/PHP中的单利模式(单态模式)/串行化与反串行化(序列化与反序列化). 1 PHP中的抽象 ...
- PHP使用static关键字声明静态属性和静态方法
PHP使用static关键字声明静态属性和静态方法 在PHP中,通过static关键字修饰的成员属性和成员方法被称为静态属性和静态方法. 静态属性和静态方法不需要在被类实例化的情况下就可以直接使用. ...
- ES6——静态属性与静态方法
静态方法只能写在class内,constructor外.通过static关键字声明 静态属性只能写在class外,通过 类名.属性名 = 属性值 声明 //静态属性与静态方法(ES6明确规定,Clas ...
- js静态属性,实例属性,封装性,prototype,__proto__综合解析
原创作品,转载请注明来源,sogeisetsu,我的csdn上也有这篇文章csdn js静态属性,实例属性,封装性,prototype,__proto__综合解析 下面是我在写博客的源代码,您可以先不 ...
- PHP面向对象——静态属性和静态方法
静态属性 所谓静态属性,也就是这个属性对于这个类来说是唯一的,不管有多少个对象,只要它引用了一个静态对象,那么这些对象引用出来的值肯定是同一个. 静态变量不能使用->这种箭头符号,而是使用::这 ...
随机推荐
- J2EE在Web容器中启动报错:com.sun.jdi.InvocationException occurred invoking method.
我只是将Hibernate映射文件中的lazy属性有true改为lazy="false",即解决了上述问题.当然我之前也遇到一个问题是不调试时插入数据是不成功的,但是在Debug模 ...
- –save与–save-dev
使用npm install node_module –save自动更新dependencies字段值: 使用npm install node_module –save-dev自动更新devDepend ...
- Android 调用系统通讯录
这个过程有三步:1)许可向你的应用程序的manifest中添加读取通讯录数据的许可 <uses-permission android:name="android.permission ...
- Android Intent实现页面跳转
Intent可以来协助完成Android各个组件之间的通信 1:startActivity(intent); //直接启动 /* ...
- PHP设计模式之单例模式(数据库访问)
1.什么是单例模式? 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统全局地提供这个实例.它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用. 2.单例模式的 ...
- 1.5 外部销售自动创建为内部PR
1.5 外部销售自动创建为内部PR 1.5.1 业务方案描述 外部销售订单登记后,在销售订单录入界面点击一个创建内部申请按钮,自动将外部销售订单创建为内部申请,创建后将不得再次创 ...
- VC中利用多线程技术实现线程之间的通信
当前流行的Windows操作系统能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程提供了多任务处理的能力.用进程和线程的观点来研究软 ...
- poj2140---herd sums
#include<stdio.h> #include<stdlib.h> int main() { ,i,j; scanf("%d",&n); ;i ...
- Netfilter-packet-flow.svg
调试网络的方法:(Debugging the kernel using Ftrace) $ watch -n1 -d sudo cat /proc/net/snmp$ watch -n1 -d su ...
- javascript打乱数组顺序-----1
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...