Size: a a a

JavaScript Rules

2018 January 21

MG

Michael Gruzdev in JavaScript Rules
ага, так еще в 2011 году говорили
источник

NA

Nikolay Apanasik in JavaScript Rules
не будет, не учи
источник

NA

Nikolay Apanasik in JavaScript Rules
js + typescript я бы порекомендовал
источник

VK

Vladyslav Kaminskyi in JavaScript Rules
Andrey Biben
Ну JS я и так учу, просто многие говорят что дарт скоро будет актуален вот и спрашиваю
учи то что тебе нравится, а не то что будет возможно актуально. При изучении технологии какая нравиться будет больше пользы чем при изучении чего то хайпового и не интересного
источник
2018 January 22

E

Evgeniy in JavaScript Rules
Здравствуйте! Подскажите пожалуйста можно ли определить временной интервал между кликами по элементу и запретить событие если этот интервал меньше определенной величины?
источник

AL

Alexander Luschenko in JavaScript Rules
Можно. При клике сохраняете в localstorage время клика. При повторном клике - получаете время и сравниваете с предыдущим
источник

E

Evgeniy in JavaScript Rules
спасибо!!!👍
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
Подскажите алгоритм к канкулятору
источник

NA

Nikolay Apanasik in JavaScript Rules
Это на какую позицию?)
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
Джуна
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
Верстальщика
источник

AL

Alexander Luschenko in JavaScript Rules
Нафиг таких товарищей
источник

AL

Alexander Luschenko in JavaScript Rules
А вообще - элементы в массив
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
Обратная польская запись
источник

NA

Nikolay Apanasik in JavaScript Rules
вот, может что почерпнешь, недавно делал
источник

NA

Nikolay Apanasik in JavaScript Rules
function Calculator(calculatorContainerId) {

   calculatorContainerId.innerHTML =
       ` <div class="row">
   <input disabled type="text" value="0" class="operations-display">
   </div>
   <div class="row">
   <button class="operation">+</button>
   <button class="operation">-</button>
   <button class="operation">*</button>
   <button class="operation">/</button>
   </div>
   <div class="row">
   <button class="number">7</button>
   <button class="number">8</button>
   <button class="number">9</button>
   </div>
   <div class="row">
   <button class="number">4</button>
   <button class="number">5</button>
   <button class="number">6</button>
   </div>
   <div class="row">
   <button class="number">1</button>
   <button class="number">2</button>
   <button class="number">3</button>
   </div>
   <div class="row">
   <button class="number decimal">.</button>
   <button class="number">0</button>
   <button class="reset">CE</button>
   </div>
   <div class="row">
   <button class="operation equal">=</button>
   </div>`;

   this.display = calculatorContainerId.querySelector('.operations-display');
   this.equalButton = calculatorContainerId.querySelector('.equal');
   this.numberButtons = calculatorContainerId.getElementsByClassName('number');
   this.operationButtons = calculatorContainerId.getElementsByClassName('operation');
   this.resetButton = calculatorContainerId.getElementsByClassName('reset');
   this.memoryCurrentNumber = 0;
   this.memoryNewNumber = 0;
   this.memoryPendingOperation = '';

   var that = this;

   for (var i = 0; i < this.numberButtons.length; i++) {
       var clickedNumberButton = this.numberButtons[i];
       clickedNumberButton.addEventListener('click', function (e) {
           that.clickOnNumberButton(e);
       });
   };

   for (var i = 0; i < this.operationButtons.length; i++) {
       var clickedOperationButton = this.operationButtons[i];
       clickedOperationButton.addEventListener('click', function (e) {
           that.clickOnOperationButton(e);
       });
   };

   for (var i = 0; i < this.resetButton.length; i++) {
       var element = this.resetButton[i];
       element.addEventListener('click', function (e) {
           that.display.value = 0;
       })
   };

   this.clickOnNumberButton = function (e) {
       // remove zero in input if new number
       if (this.memoryNewNumber) {
           this.display.value = e.currentTarget.innerHTML;
           this.memoryNewNumber = false;
       } else {
           if (this.display.value === '0') {
               this.display.value = e.currentTarget.innerHTML;
           } else {
               this.display.value += e.currentTarget.innerHTML;
           };
       };

   };

   this.clickOnOperationButton = function (e) {
       var localOperationMemory = this.display.value;

       if (this.memoryNewNumber && this.memoryPendingOperation !== '=') {
           this.display.value = this.memoryCurrentNumber;
       } else {
           this.memoryNewNumber = true;
           if (this.memoryPendingOperation === '+') {
               this.memoryCurrentNumber += parseFloat(localOperationMemory);
           } else if (this.memoryPendingOperation === '-') {
               this.memoryCurrentNumber -= parseFloat(localOperationMemory);
           } else if (this.memoryPendingOperation === '*') {
               this.memoryCurrentNumber *= parseFloat(localOperationMemory);
           } else if (this.memoryPendingOperation === '/') {
               this.memoryCurrentNumber /= parseFloat(localOperationMemory);
           } else {
               this.memoryCurrentNumber = parseFloat(localOperationMemory);
           };
           this.display.value = this.memoryCurrentNumber;
           this.memoryPendingOperation = e.currentTarget.innerHTML;
       };
   };
}
источник

NA

Nikolay Apanasik in JavaScript Rules
// get calcuator containers
var calcContainer1 = document.querySelector('#calc-container-1');
var calcContainer2 = document.querySelector('#calc-container-2');
var calcContainer3 = document.querySelector('#calc-container-3');

var calculator1 = new Calculator(calcContainer1);
var calculator2 = new Calculator(calcContainer2);
var calculator3 = new Calculator(calcContainer3);
источник

AL

Alexander Luschenko in JavaScript Rules
Ищем знаки приоритета - а затем анализ элементов внутри массива
источник

DK

Dmitriy Kosianchuk in JavaScript Rules
Благодарю
источник