function getArgs(func) {
// First match everything inside the function argument parens.
var args = func.toString().match(/function\s.*?\(([^)]*)\)/)[1];
// Split the arguments string into an array comma delimited.
return args.split(',').map(function(arg) {
// Ensure no inline comments are parsed and trim the whitespace.
return arg.replace(/\/\*.*\*\//, '').trim();
}).filter(function(arg) {
// Ensure no undefined values are added.
return arg;
});
}
// Пример
function a(b,c) { }
getArgs(a); // ['b', 'c']
function Worker(name, surname, rate, days) {
var names = getArgs(Worker);
for (var i = 0; i < names.length; i++) {
var name = names[i];
var value = arguments[i];
console.warn(name, value); // Выведет имя аргумента и его значение.
// Значение будет undefined если оно не будет передано
};
}
let symbolsCounter = 0;
let mistakesCounter = 0;
function checkUsersKey (levelText) {
var theEnd = false;
var counterLetters = 0;
var keyName;
while (theEnd != true ) {
document.addEventListener("keypress", (event) => {
keyName = event.key;
if(levelText[counterLetters] == keyName){
alert("true");
}
})
theEnd = true;
}
}
checkUsersKey("something");
// Не очень понятно, зачем эти переменные
let symbolsCounter = 0;
let mistakesCounter = 0;
function checkUsersKey (levelText) {
var theEnd = false;
var counterLetters = 0;
var keyName;
function checkKeyEvent(event) {
keyName = event.key;
// Это условие прекращает ваш "цикл".
if(theEnd) {
document.removeEventListener('keypress', checkKeyEvent);
return;
}
if(levelText[counterLetters] == keyName){
alert("true");
}
// У вас в коде почему-то в конце цикла theEnd = true, это значит, что цикл не повторится.
// Мне кажется это ошибка, но я все равно перенес ее в код для примера.
// Можете изменять переменную в true например когда получите нужную клавишу.
theEnd = true;
}
document.addEventListener("keypress", checkKeyEvent);
}
checkUsersKey("something");
video::-webkit-media-controls-fullscreen-button {}
video::-webkit-media-controls-play-button {}
video::-webkit-media-controls-timeline {}
video::-webkit-media-controls-current-time-display{}
video::-webkit-media-controls-time-remaining-display {}
video::-webkit-media-controls-mute-button {}
video::-webkit-media-controls-toggle-closed-captions-button {}
video::-webkit-media-controls-volume-slider {}
Блок IF - в скобках идет перечисление команд через запятую.
function LongClick(e, t, n) {
"use strict";
var i = this;
this.trackingClick = false;
this.trackingClickStart = 0;
this.targetElement = null;
this.touchStartX = 0;
this.touchStartY = 0;
this.touchBoundary = 10;
this.time = t;
this.handler = n;
this.timer = null;
this.layer = e;
if (!e || !e.nodeType) {
throw new TypeError("Layer must be a document node");
}
this.onTouchStart = function() {
return LongClick.prototype.onTouchStart.apply(i, arguments);
};
this.onTouchMove = function() {
return LongClick.prototype.onTouchMove.apply(i, arguments);
};
this.onTouchEnd = function() {
return LongClick.prototype.onTouchEnd.apply(i, arguments);
};
this.onTouchCancel = function() {
return LongClick.prototype.onTouchCancel.apply(i, arguments);
};
if(window.navigator.msPointerEnabled) {
this.startEventName = "MSPointerDown";
this.moveEventName = "MSPointerMove";
this.endEventName = "MSPointerUp";
this.cancelEventName = "MSPointerCancel"
} else {
this.startEventName = "touchstart";
this.moveEventName = "touchmove";
this.endEventName = "touchend";
this.cancelEventName = "touchcancel";
}
e.addEventListener(this.startEventName, this.onTouchStart, false);
e.addEventListener(this.moveEventName, this.onTouchMove, false);
e.addEventListener(this.endEventName, this.onTouchEnd, false);
e.addEventListener(this.cancelEventName, this.onTouchCancel, false);
}