function A(){this.id = "我是AA"}            //   在构造函数外定义的都是所有对象共享的
A.id = "我是A";
A.sayId = function(){alert(A.id);}
A.sayId();

如上,在构造函数外用函数名定义的属性或者方法,可以也只可以通过函数名来访问,这和C++基本一样。

输出

试图访问非静态变量时

function A(){this.id = "我是AA"}            //   在构造函数外定义的都是所有对象共享的
A.id = "我是A";
A.sayName = function(){alert(this.id);}
A.sayName();

输出

说明访问不了。

再看看this是什么

那么如果用prototype呢?

function A(){this.id = "我是AA"}            //   在构造函数外定义的都是所有对象共享的
A.prototype.id = "我是A";
A.prototype.sayName = function(){alert(this.id);}
a = new A();
a.sayName();

输出

说明:

1、输出"我是AA"是因为"我是A"是在之后赋值的,把"我是A"覆盖了。

2、prototype指向的是一个Object对象,注意它是一个对象,当使用prototype时(或者是定义函数后),会产生一个Object对象,等同于 object = new Object();

3、通过prototype添加的属性和方法不是静态的,只能通过对象来访问。

JS静态变量和静态函数相关推荐

  1. static的三种用法,定义静态变量,静态函数,静态代码块!

    static的三种用法,定义静态变量,静态函数,静态代码块! 1.定义静态变量 class PersonStatic { //静态变量的特点 //1.静态变量无需生成对象就可被调用,可以使用类名和对象 ...

  2. 用汇编的眼光看C++(之类静态变量、静态函数)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 看过设计模式的朋友都知道,我们在设计单件模式的时候离不开类的静态函数.和类的成员变量不同,类的 ...

  3. c/c++静态变量和静态函数

    c语言中 c语言中需要内存来存放数据.而内存主要分为两类:静态存储区和动态存储区; 静态存储区分为:只读数据(READONLY DATA)区.以读写数据(RW DATA)区.未初始化区(BSS).它们 ...

  4. C语言中的静态变量和静态函数

    C中的静态变量 基本上,声明静态变量时,它们仅创建它们的单个副本,也称为类变量 .它们保留在相应范围内分配的值,并且不会在其新范围内再次初始化变量. 静态变量在代码执行期间保留在内存空间中. 静态变量 ...

  5. java静态函数_(基础)java中的静态变量与静态函数Static

    静态static 静态出现最大的原因:节约内存,只存一份,由对象共享这个属性. 静态的作用是什么? 场景: 当每个对象都有一个相同的属性,如country="China",那么每个 ...

  6. c语言c++语言中静态变量,函数详解

    静态变量,静态函数对于一些c,c++的初学者来说,造成了不少的困扰.昨晚和寝室的室友讨论到这 个问题,想了一下,作了一下总结: 虽然说c和c++在很多人的眼里就是孪生姐妹,其实还是有很大区别的.在这里 ...

  7. 类模板,多种类型的类模板,自定义类模板,类模板的默认类型,数组的模板实现,友元和类模板,友元函数,类模板与静态变量,类模板与普通类之间互相继承,类模板作为模板参数,类嵌套,类模板嵌套,类包装器

     1.第一个最简单的类模板案例 #include "mainwindow.h" #include <QApplication> #include <QPush ...

  8. c语言静态函数调用静态变量_C语言中的静态变量和函数

    c语言静态函数调用静态变量 C中的静态变量 (Static Variables in C) Basically, when static variables are declared, they cr ...

  9. C语言 static静态变量

    静态变量类型说明符是static.静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都 ...

最新文章

  1. openSUSE 新的源(镜像)
  2. Android开源框架源码鉴赏:Fresco
  3. 博士申请 | 荷兰代尔夫特理工大学陶倩教授招收医学人工智能全奖博士生
  4. the code place where the binding is converted to final value displayed in u
  5. Android两个注意事项.深入了解Intent和IntentFilter(两)
  6. 如何设置 iCloud 云盘?
  7. cygwin--简单备忘
  8. l298n电机哪一端为正_L298N控制直流电机正反转
  9. WordPress直接调用头像地址
  10. 恩智浦半导体推出近距离非接触式读卡器IC CLRC663
  11. 正确理解三极管的放大区、饱和区、截止区
  12. Bing Wallpaper - 英语学习利器
  13. Alkyne-PEG-Amine,Alkyne-PEG-NH2 炔基PEG氨基
  14. 电脑开机黑屏,只有鼠标箭头(windows无法加载桌面)?
  15. 企业微信话术库是什么?如何添加?
  16. Python爬虫入门实战之猫眼电影数据抓取(理论篇)
  17. Apple App Store和Google Play 进行ASO有哪些区别?
  18. 最简单的命令开启cgi文件服务器
  19. Linux驱动程序Makefile详解
  20. 使用nodejs读取简体语言json文件并生成繁体语言json文件

热门文章

  1. PostgreSQL的Checkpoint 发生的时机
  2. 从数据库读写RadioButtonList选中的值
  3. 将自己的女朋友的话和视频做为启动音乐和启动动画(XP)
  4. mysql binlog 备份_做好mysql运维,必须熟练掌握备份和恢复,实战一次不行多来几次...
  5. windows网关详解 【了解网关的重要性,增加网络性能】【FreeXploiT综合文】
  6. server的自增主键返回函数 sql_SQL自增主键函数
  7. css中设置图片旋转45度,css 实现缓和变量,鼠标悬停时元素旋转45度动画
  8. android 相册 uri空,Android---相册getContentResolver().query结果为空指针
  9. Spring MVC Ajax返回中文乱码
  10. mysql事务所_mysql事务