从模块外部访问内部成员

简介: 从模块外部访问内部成员1.使用exportsexports.js:var myMsg='hello';var funcname = function () { return 'testMsg';};exports.

从模块外部访问内部成员

1.使用exports

exports.js:

var myMsg='hello';
var funcname = function () {
    return 'testMsg';
};

exports.msg = myMsg;
exports.funcname = funcname;

foo.js:

var foo = require('./exports.js');

console.log(foo.msg);

console.log(foo.funcname());

2.将模块定义为类(module.exports)

student.js:

var _name,_age;
var name = '',age =0;
//模块对象的构造函数
var foo=function (name,age) {
    _name = name;
    _age= age;
}

foo.prototype.GetName= function () {
    return _name;
}

foo.prototype.SetName= function (name) {
    _name= name;
}
foo.prototype.GetAge= function () {
    return _age;
}

foo.prototype.SetAge= function (age) {
    _age= age;
}

foo.prototype.name = name;
foo.prototype.age = age;
module.exports = foo;

stuTest.js

var foo = require('./student.js');
var myFoo = new foo("tom",14);
console.log("获取修改前的私有变量");
console.log(myFoo.GetName());
console.log(myFoo.GetAge());

myFoo.SetName("bob");
myFoo.SetAge(20);
console.log("获取修改后的私有变量");
console.log(myFoo.GetName());
console.log(myFoo.GetAge());
相关文章
|
4月前
|
项目管理
项目管理定义问题之什么是核心域
项目管理定义问题之什么是核心域
|
5月前
|
Java C++ Python
私有成员、公共成员、保护成员如何定义
私有成员、公共成员、保护成员如何定义
50 0
|
API 开发者
和你的外部团队成员或者组织协同使用同一个微应用
和你的外部团队成员或者组织协同使用同一个微应用
67 2
|
6月前
访问结构成员
【2月更文挑战第9天】访问结构成员。
27 3
|
6月前
|
C# 开发者 索引
C# 11.0中的静态抽象成员:接口中的新变革
【1月更文挑战第25天】C# 11.0引入了接口中的静态抽象成员,这一新特性为接口设计带来了更大的灵活性。静态抽象成员允许在接口中定义静态方法和属性,并要求实现类提供具体的实现。本文将详细探讨C# 11.0中静态抽象成员的工作原理、优势及其对现有编程模式的影响,旨在帮助读者更好地理解和应用这一新特性。
|
XML JSON 数据格式
|
Go PHP 开发者
接口成员|学习笔记
快速学习接口成员,了解接口内部的成员规范,掌握接口的应用。
接口成员|学习笔记
|
Java
孔子装爹案例_帮助理解多态的成员访问特点及转型
多态的成员访问特点及转型理解 class 孔子爹 {   public int age = 40;   public void teach() {     System.out.println("讲解JavaSE");   } } class 孔子 extends 孔子爹 {   p...
937 0