단례 모델 분석과 사상
var mySingleton = (function () {
// singleton
var instacnce;
function init() {
//
funciton privateMethod(){
//...
}
var privateVariable = "private";
var privateRandomNumber = Math.random();
/* */
return {
//
publicMethod: function () {
console.log('hello world');
},
publicProperty: 'test',
getRandomNumber:function(){
return privateRandomNumber;
}
};
}
return {
// singleton , ,
getInstance: function () {
if (!instance) {
instance= init();
}
return instance;
}
};
})();
/* :*/
mySingleton .getInstance().publicMethod();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
singleton :
- ;
-
, 。
singleton : singleton , , , 。
, , , 。
, ,singleton 。
var SingletonTester = (function () {
// :
function Singleton(options) {
// options ( )
options= options|| {};
// name
this.name = 'SingletonTester';
// pointX
this.pointX = options.pointX || 6; // ,
// pointY
this.pointY = options.pointY || 10;
}
//
var instance;
//
var _static = {
name: 'SingletonTester',
//
// Singleton
getInstance: function (options) {
if (instance === undefined) {
instance = new Singleton(options);
}
return instance;
}
};
return _static;
})();
var singletonTest = SingletonTester.getInstance({ pointX: 5 });
console.log(singletonTest.pointX); // 5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
singleton , 。 : 、 ,singleton
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.