// Где-то выше
const delay = (ms) => new Promise((resolve) => {
setTimeout(resolve, ms);
});
// Это уже в асинхронной функции
/*
Можно вызвать в любом месте в асинхронной функции, тогда код, условно,
остановится там на 1000 миллисекунд и продолжится, когда Promise из delay зарезолвится
*/
await delay(1000);
const delay = (ms) => new Promise((resolve) => {
setTimeout(resolve, ms);
});
(async () => {
for (var key in contact) {
var obj = contact[key];
for (var prop in obj) {
$('[name="'+prop+'"]').val(obj[prop]);
console.log(key + " " + obj[prop]);
}
await delay(1000);
}
})()
const Form = ({ children, ...rest }) => <form {...rest}>{children}</form>;
const Div = ({ children, ...rest }) => <div {...rest}>{children}</div>;
const Card = ({ editable }) => {
const Container = editable ? Form : Div;
return <Container>{"Тут ваш контент"}</Container>;
};
ReactDOM.render(<Card />, document.getElementById("root"));
ReactDOM.render(<Card editable />, document.getElementById("root"));
оператор && вычисляет операнды слева направо до первого «ложного» и возвращает его, а если все истинные – то последнее значение.
const yourArray = [];
const proxyArray = new Proxy(yourArray, {
set: (array, key, value) => {
console.log(`${key} setted to ${value}`);
array[key] = value;
return true;
}
});
// И дальше можно работать с proxyArray, как с yourArray, но с дополнительным поведением
proxyArray[0] = 10;
import jwt_decode from 'jwt-decode';
import store from './redux/store';
import { setCurrentUser, refresh } from './redux/actions/authActions';
export default () => {
if (localStorage.getItem('jwtToken')) {
const decoded_jwt = jwt_decode(localStorage.getItem('jwtToken'));
store.dispatch(setCurrentUser(decoded_jwt));
const current_time = Date.now() / 1000;
if (current_time > decoded_jwt.exp) {
store.dispatch(refresh())
}
}
}
import checkJwtToken from './jwtTokenChecker';
checkJwtToken();
var bg = ["img/background.jpg", "img/background_2.jpg"];
var index = 0;
var timer = setInterval(() => {
var s = document.getElementById('main').style;
s.backgroundImage = 'url('+bg[index++ % bg.length]+')';
}, 2000);
() => {
var s = document.getElementById('main').style;
s.backgroundImage = 'url('+bg[index++ % bg.length]+')';
}
index++
index++ % bg.length
index, index % 2
0 0
1 1
2 0
3 1
И так далее
index, index % 2
0 0
1 1
2 2
3 0
4 1
5 2
И так далее
// Займет O(n) времени, но только один раз
let indexedItems = {};
marketAPI.items.forEach(item => {
indexedItems[item.market_hash_name] = item;
});
// Это уже займет O(1)
let name = 'Anterior of the Abysm';
let object = indexedItems[name];
Если я изучу в достаточной мере JS ,то смогу потом изучить Node.Js и работать с серверной часть
По одной из задач, за которую вы поставлены ответственным, горят сроки, ваши действия?