51 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						||
title: Creating Singleton In JavaScript
 | 
						||
localeTitle: Создание Singleton в JavaScript
 | 
						||
---
 | 
						||
## Создание Singleton в руководстве Javascript
 | 
						||
 | 
						||
Эта статья посвящена созданию синглтонов в естественном (чистом) Javascript. Эта концепция может быть полезна для поддержания чистого кода.
 | 
						||
 | 
						||
Если вы хотите сохранить свой код или somedata, он останется таким же, как и для вашего приложения, так вы можете это сделать.
 | 
						||
 | 
						||
**Предварительные знания** Это просто поможет вам понять концепцию более легко, иначе вы всегда можете скопировать-вставить код и соответствующим образом изменить его.
 | 
						||
 | 
						||
*   Основной синтаксис Javascript
 | 
						||
*   Функции Javascript
 | 
						||
*   IIFE в Javascript
 | 
						||
 | 
						||
### Давайте начнем
 | 
						||
 | 
						||
Давайте создадим объект с функцией IIFE, которая мгновенно выполнится, чтобы дать нам эффект Singleton.
 | 
						||
```
 | 
						||
var singletonFn = (function(){ //Created IIFE Function 
 | 
						||
  var dataCounter = 0; 
 | 
						||
  return { //Any code inside this return stuff will be accessible directly using objectname. 
 | 
						||
 
 | 
						||
    getDataCounter: function(){ 
 | 
						||
      return dataCounter; 
 | 
						||
    }, 
 | 
						||
 
 | 
						||
    setDataCounter: function(val){ 
 | 
						||
      dataCounter = val; 
 | 
						||
    }, 
 | 
						||
 
 | 
						||
    fishNames: ["SimpleFish"] //Can create variables, Arrays, etc. 
 | 
						||
  } 
 | 
						||
 })(); 
 | 
						||
```
 | 
						||
 | 
						||
Теперь выполнить или использовать ваш синглтон. в браузере после сохранения этого файла в js и его загрузки.
 | 
						||
```
 | 
						||
console.log(singletonFn.getDataCounter()); //0 as bydefault it will be 0. 
 | 
						||
 
 | 
						||
 singletonFn.setDataCounter(20); 
 | 
						||
 
 | 
						||
 console.log(singletonFn.getDataCounter()); //20 as we assigned. 
 | 
						||
 
 | 
						||
 console.log(fishNames); //will Print array with "SimpleFish". 
 | 
						||
```
 | 
						||
 | 
						||
Теперь с помощью этих знаний вы можете определить константы, перечисления или что-то, что нужно использовать в проекте, написанном здесь. или что-то вроде конфигураций.
 | 
						||
 | 
						||
Надеюсь, это поможет вам лучше писать коды. Счастливое кодирование :) |