7b2263697068657274657874223a225866654d5347337535665773696736304b57736d6874386b5850496d4d6d596251787259354a66564d57654a5c2f6363767034616b686c56526c37595a776c7a68222c226976223a223334626432643364653737306238363730323463306431656264666139636165222c2273616c74223a226431396639326631653132653034373764333166383963356565626665383433663132336361323930316633653530373830343331326665316235333166316633326135343566333961346563376534303630633037613136393231333161326533353235613761626262623032313434353464613334393939333534376530613333316464346535653962356431373537626631643137343935343431333535353236633765306239373835373536376362656266343530633134636165623565326339626166323065356532356533343438343230313266363232653036383565306366353361343561356530333062323832386664613865353731663264343831323266373962346231643466633137383430366639323635313761336565323262336336623262336538663332373630366532666432646264376362613538643739386333363830363964393937386133633361323664383039653862613764343334383632663564326131333638366465666465313230373533636535316636323032313437313761376463316532326466383366663331323138316463616233316637313963386536326466313435653364343838376465656636663538306337306661663730353833333062343433616639366338373538393561653633343334363831666137326234336665643162306361616164653030222c2269747274223a3636367d
{
"ciphertext":"XfeMSG3u5fWsig60KWsmht8kXPImMmYbQxrY5JfVMWeJ\/ccvp4akhlVRl7YZwlzh",
"iv":"34bd2d3de770b867024c0d1ebdfa9cae",
"salt":"d19f92f1e12e0477d31f89c5eebfe843f123ca2901f3e507804312fe1b531f1f32a545f39a4ec7e4060c07a1692131a2e3525a7abbbb0214454da349993547e0a331dd4e5e9b5d1757bf1d17495441355526c7e0b97857567cbebf450c14caeb5e2c9baf20e5e25e344842012f622e0685e0cf53a45a5e030b2828fda8e571f2d48122f79b4b1d4fc178406f926517a3ee22b3c6b2b3e8f327606e2fd2dbd7cba58d798c368069d9978a3c3a26d809e8ba7d434862f5d2a13686defde120753ce51f620214717a7dc1e22df83ff312181dcab31f719c8e62df145e3d4887deef6f580c70faf7058330b443af96c875895ae63434681fa72b43fed1b0caaade00",
"itrt":666
}
Отрица́ние (инве́рсия, от лат. inversio — переворот, логи́ческое «НЕ»)
function setCenter () {
myMap.setCenter([57.767265, 40.925358]);
}
import React from 'react';
import {Div, Group, Panel, View} from '@vkontakte/vkui';
import '@vkontakte/vkui/dist/vkui.css';
class App extends React.Component {
constructor(props) {
super(props);
this.videoRef = React.createRef();
this.handleVideo = this.handleVideo.bind(this);
this.videoError = this.videoError.bind(this);
}
handleVideo(stream) {
this.videoRef.current.srcObject = stream;
}
videoError = (err) => {
alert(err.name)
}
componentDidMount() {
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
if (navigator.getUserMedia) {
let constraints = {
audio: false,
video: {facingMode: 'environment'}
};
navigator.mediaDevices.getUserMedia(constraints)
.then(this.handleVideo)
.catch(this.videoError)
}
}
render() {
return (
<View activePanel="mainPanel" header={false}>
<Panel id="mainPanel">
<Group>
<Div>
<video ref={this.videoRef} style={{width: '100%'}} playsInline autoPlay muted/>
</Div>
</Group>
</Panel>
</View>
);
}
}
export default App;
Сейчас в основе приложений сообществ — JavaScript SDK. Однако чтобы оставаться на острие технологий и унифицировать разработку всей экосистемы ВКонтакте, мы приняли решение отказаться от JavaScript SDK в пользу VK Connect.
С 1 марта приложения, которые интегрированы с платформой через JavaScript SDK, перестанут работать. В каталоге будут размещены только приложения, использующие VK Connect.
arr.sort([compareFunction])
А если текущий и следующий элемент в середине массива, то как они сравниваются с теми что были в начале?
const array = [25, 8, 7, 41, 1, 3];
array.sort((a,b) => {
console.log(`compare ${a},${b}`);
return a > b ? 1 : a === b ? 0 : -1;
});
compare 25,8
compare 25,7
compare 8,7
compare 25,41
compare 41,1
compare 25,1
compare 8,1
compare 7,1
compare 41,3
compare 25,3
compare 8,3
compare 7,3
compare 1,3
[ 1, 3, 7, 8, 25, 41 ]
document.querySelector(".button").addEventListener("click", (e) => { /* ... */ });
/* и т.д. в таком же духе */
var canvas = document.getElementById("canvas"),
ctx = canvas.getContext("2d");
canvas.width = canvas.height = 300;
var x = 150,
y = 150,
velY = 0,
velX = 0,
speed = 2,
friction = 0.98,
keys = [];
function update() {
requestAnimationFrame(update);
if (keys[38]) {
if (velY > -speed) {
velY--;
}
}
if (keys[40]) {
if (velY < speed) {
velY++;
}
}
if (keys[39]) {
if (velX < speed) {
velX++;
}
}
if (keys[37]) {
if (velX > -speed) {
velX--;
}
}
velY *= friction;
y += velY;
velX *= friction;
x += velX;
if (x >= 295) {
x = 295;
} else if (x <= 5) {
x = 5;
}
if (y > 295) {
y = 295;
} else if (y <= 5) {
y = 5;
}
ctx.clearRect(0, 0, 300, 300);
ctx.beginPath();
ctx.arc(x, y, 5, 0, Math.PI * 2);
ctx.fill();
}
update();
document.body.addEventListener("keydown", function (e) {
keys[e.keyCode] = true;
});
document.body.addEventListener("keyup", function (e) {
keys[e.keyCode] = false;
});
ymaps.Map
с нужными вам настройками (center, zoom)GET statuses/retweets/:id