js构造函数的实例成员和静态成员
js构造函数的实例成员和静态成员
构造函数是一种特殊的函数,主要用来初始化对象,也就是为对象成员(属性,方法)赋初始值。
Js的构造函数中可以添加一些成员,可以在构造函数本身上添加,也可以在构造函数内部的this 上添加,这两种添加方式所添加的就是静态成员和实例成员。
1.实例成员
实例成员就是在构造函数内部添加的成员,只能由实例化的对象来访问
function Star(uname,age){this.uname = uname;this.age = age;this.sing = function(){console.log("我会唱歌");}
}
var ldh = new Star('刘德华',18);//创建实例化对象
console.log(ldh.uname);//用实例化对象ldh访问uname 正确
ldh.sing();//用实例化对象ldh访问sing() 正确
console.log(Star.uname);//用构造函数访问uname 报错
上述,uname age sing就是实例成员,用实例化对象ldh来访问是正确的
用Star构造函数来访问是错误的
2.静态成员
静态成员就是在构造函数本身上添加的成员,只能由构造函数本身来访问
function Star(uname,age){this.uname = uname;this.age = age;this.sing = function(){console.log("我会唱歌");}
}
ldh = new Star('刘德华',18);
Star.sex = '男';//创建静态成员
console.log(Star.sex);//通过构造函数本身访问sex 正确
console.log(ldh.sex);//通过实例化对象访问 报错
上述,sex就是静态成员,用实例化对象ldh来访问是错误的
用Star构造函数来访问是错误的
js构造函数的实例成员和静态成员相关推荐
- JavaScript-面向对象(构造函数,实例成员,静态成员)
面向过程和对象,面向过程重点关注过程步骤,面向对象关注点是对象,对象里面有属性和方法 构造函数 如果一个函数使用new关键字调用,这个函数就是构造函数 // new出来的对象 称为实例化对象,实例对象 ...
- JS中的实例成员和静态成员
1.实例成员就是构造函数内部通过this添加的成员 实例成员只能通过实例化的对象进行访问 2.静态成员是在 构造函数本身上添加的成员 静态成员只能通过构造函数访问 不能通过对象访问 <scrip ...
- JavaScript模拟实现“实例成员”和“静态成员”
在编写我们的JavaScript代码的时候,我们需要考虑代码的封装性,那么,究竟怎样的封装才是好的呢? 借助后端程序语言(这里主要是参考Java)封装性,利用JavaScript语言模拟实现,对Jav ...
- 构造函数的静态成员和实例成员
如题: 以下代码执行后,result的值是什么? function Test(name) { } Test.name='Tom'; Test.prototype.name="John&quo ...
- 构造函数(静态成员)(实例成员)
1.Javascript的构造函数中可以添加一些成员,可以在构造函数本身添加,也可以在构造函数的内部的this上添加,通过这两种方式添加的成员,就分别成为静态成员和实例成员. 静态成员:在构造 ...
- JavaScript原型、原型链图、静态成员和实例成员
面向对象编程的好处是让能够让代码进行复用,提高代码运行速度,同时有利于代码的维护. 在面向对象中要想使代码进行复用就需要使用原型 一.什么是原型 1.prototype prototype是函数中的属 ...
- 作为前端,你需要了解的js构造函数和原型
文章目录 1.1 概述 1.2 构造函数 1.3构造函数的问题 1.4 构造函数的原型 prototype 1.5 对象原型__proto__ 1.6 constructor 构造函数 1.7 构造函 ...
- JS高级之静态成员和实例成员
成员 就是指属性.方法的统称 静态成员是指 由构造函数直接调用的属性.方法叫静态成员 实例成员是指 由构造函数创建出来对象才能调用的属性和方法就叫实例成员 实例化: 创建一个对象,也可以叫实例化一个对 ...
- js高级-静态成员和实例成员
function Star(uname,age){this.uname = uname;this.age = age;this.sing = function(){console.log('我会唱歌' ...
最新文章
- Linux操作系统下文件作用
- RDKit:基于RECAP生成片段
- R语言可视化分面图、多变量分组嵌套多水平t检验、可视化多变量分组嵌套多水平分面条形图(faceting bar plot)并添加显著性水平、添加误差条
- 进程和线程的区别?什么时候用进程?什么时候用线程?
- python调用动态链接库windows_用win从python ctypes调用标准windows.dll的Segfault
- 华为网络技术培训笔记之常用网络工具(一)
- 《我们应当怎样做需求分析》阅读笔记
- HiHocoder 1036 : Trie图 AC自动机
- 漏洞防御方案_越权漏洞原理及防御方案
- git stash pop 冲突,git stash list 中的记录不会自动删除的解决方法
- 清华大学829电磁场考研资料
- Typora(就是个浏览器)自定义设置。附带:Typora免费版链接
- html鼠标悬停改变背景,html - 更改鼠标悬停行的背景颜色 - SO中文参考 - www.soinside.com...
- 深度学习语音识别方法概述与分析
- 阿里规定超过三张表禁止JOIN,为啥?
- SwiftUI+CoreData项目出现The operation couldn’t be completed(GenericObjCError error 0)错误的解决
- Oracle技巧之 desc+表名
- Jquery Jqprint—借助Jquery Jqprint实现网页打印功能
- AidLearning0.87F3安装Python3.8
- 支付宝推出信用租房 醉翁之意不在酒?