JS构造函数(便于理解,简易)

* 构造函数:
* 1.构造函数的函数名最好首字母大写(否则 WebStorm 编辑器会提示报错)
* 2.自己的对象多次被复制
* 3.构造函数里可以创建公有属性、公有方法、私有属性和私有方法
* 3.构造函数内部的方法可以访问构造函数内部的属性
* 4.当对象被实例化后,构造函数会立即执行它所包含的所有代码
* 5.私有方法和私有属性都不对外公开,即使创建构造函数的实例化对象,依旧不能访问,只能在构造函数内部进行访问

 1 /**
 2  * 构造函数:
 3  * 1.构造函数的函数名最好首字母大写(否则 WebStorm 编辑器会提示报错)
 4  * 2.自己的对象多次被复制
 5  * 3.构造函数里可以创建公有属性、公有方法、私有属性和私有方法
 6  * 3.构造函数内部的方法可以访问构造函数内部的属性
 7  * 4.当对象被实例化后,构造函数会立即执行它所包含的所有代码
 8  * 5.私有方法和私有属性都不对外公开,即使创建构造函数的实例化对象,依旧不能访问,只能在构造函数内部进行访问
 9  *
10  * */
11
12 function MyObject(msg){
13     //创建公有属性
14     this.myMsg = msg;
15     this.address = ‘上海‘;
16
17     console.log(‘构造函数内部‘);
18
19     //创建公有方法
20     this.sayAge = function () {
21         console.log(‘这是一个公有方法‘);
22     };
23
24     //私有属性
25     var name = ‘liuqiuchen‘;
26     var age = 100;
27     var _this = this;
28
29     //私有方法
30     /**私有方法和私有属性都不对外公开,即使创建构造函数的实例化对象,依旧不能访问,只能在构造函数内部进行访问*/
31     function myFunc(){
32         console.log(‘我是私有方法,名字是:‘ + name);
33     }
34
35     this.run = function () {
36         myFunc();
37     };
38
39     this.run2 = function () {
40         console.log("Msg:" + _this.myMsg);
41     };
42 }
43
44 //实例化构造函数对象
45 var obj1 = new MyObject(‘信息‘);
46
47 obj1.sayAge();
48 obj1.run();
49 obj1.run2();
时间: 2024-10-15 09:10:15

JS构造函数(便于理解,简易)的相关文章

谈谈JS构造函数

//构造函数 //使自己的对象多次复制,同时实例根据设置的访问等级可以访问其内部的属性和方法 //当对象被实例化后,构造函数会立即执行它所包含的任何代码 function myObject(msg) { //特权属性(公有属性) this.myMsg = msg; //只在被实例化后的实例中可调用 this.address = 'Chengdu'; //私有属性:无法通过对象直接访问 var name = 'Tirion'; var that = this; //私有方法 function sa

js面向对象深入理解

js面向对象深入理解 ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是,ECMAScript 没有类的概念,因此它的对象也与基于类的语言中的对象有所不同. 一.创建对象 创建一个对象,然后给这个对象新建属性和方法. var box = new Object(); //创建一个Object 对象 box.name = 'Lee'; //创建一个name 属性并赋值 b

便于理解mysql内幕的各种逻辑图组

便于理解mysql内幕的各种逻辑图组 http://blog.sina.com.cn/s/blog_445e807b0101ggtl.html 以下是个人一直以来从网络等各种途径收集到的一些对理解mysql有重要意义的图,现共享给大家,共同学习,希望能够为您更好的理解mysql的各种内幕有所帮助,废话不多说,直接上图: 1,顶顶有名的官方mysql架构图,理解mysql整体机构必不可少 2,更直观性mysql整体逻辑机构图: f3,innodb引擎架构图,对理解innodb内部结构大有裨益 f

关于C#中派生类调用基类构造函数的理解

(1)当基类中没有自己编写的构造函数时,派生类默认条用基类的构造函数 (2)当基类中有自己编写的构造函数时,要在基类中添加无参的构造函数 Java代码   public class MyBaseClass { public MyBaseClass() { } public MyBaseClass(int i) { Console.WriteLine("我是基类带一个参数的构造函数"); } } public class MyDerivedClass : MyBaseClass { pu

C++ 类的多态一(virtual关键字--构造函数深刻理解)

//virtual关键字--构造函数深刻理解 #include<iostream> using namespace std; /* C语言编译器,c++编译器全部是静态链编,就是一段一段代码的编译,不会考虑上下文 例如编译到void ProtectA(Point pin) 编译器就会认为pin就是Point类型, 而不会去联系上下文,去分析pin有没有可能是子类对象 virtual关键字会自动检测这个父类对象有没有是子类对象 */ /* virtual关键字的作用 假设父类中存在用virtua

JS构造函数的用法和JS原型

$(function(){ //1 var rec = new Rectangle(5, 10); //alert(rec.width + "*" + rec.height + "=" + rec.area()); //alert(rec.hasOwnProperty("width")); //alert("area" in rec); //alert(rec.toString()); //2 var message = &q

Hibernate为表字段添加备注信息,便于理解数据库设计

java实体类,可以加上字段的描述,是个好的习惯吧,便于理解数据库设计,为后期维护,升级,改造提供支持

转载——便于理解mysql内幕的各种逻辑图组

原文地址:http://blog.sina.com.cn/s/blog_445e807b0101ggtl.html 1,顶顶有名的官方mysql架构图,理解mysql整体机构必不可少 2,更直观性mysql整体逻辑机构图: 3,innodb引擎架构图,对理解innodb内部结构大有裨益 4,mysql sql执行过程示意图,对理解mysql执行计划有很大帮助 5,当 ‘innodb_flush_log_at_trx_commit = x ’x=0,1,2 各值时刷盘时的示意图 6,mysql 内

转 关于C#中派生类调用基类构造函数的理解

关于C#中派生类调用基类构造函数的理解 .c#class       本文中的默认构造函数是指在没有编写构造函数的情况下系统默认的无参构造函数 1.  当基类中没有自己编写构造函数时,派生类默认的调用基类的默认构造函数 Ex: public class MyBaseClass    {    } public class MyDerivedClass : MyBaseClass    {        public MyDerivedClass()        {            Con

JS数据类型的理解(猜测)

Js 数据类型 对于这个主题,首先来看几个问题,如果你对这几个问题很清楚的话,那就请直接跳过吧,不用接着往下看了,如果不清楚,建议你还是看看. 1)如果判断函数?function 和object的联系是什么? 2)typeof 和instanceof 的区别是什么和作用是什么? 3)undefined 和null 有什么区别? 4)js 有哪几种基本的数据类型? 5)Undefined,undefined,’undefined’分别是什么? 6)typeof null  ,null instan