let checked = null;
$('input').click(function() {
checked = checked === this.value ? null : this.value;
this.checked = !!checked;
});
// или
document.querySelectorAll('input').forEach(function(n) {
n.addEventListener('click', this);
}, function({ target: t }) {
t.checked = !!(this[0] = this[0] === t ? null : t);
}.bind([]));const $checkboxes = $('input').change(function() {
if (this.checked) {
$checkboxes.not(this).prop('checked', false);
}
});
// или
const checkboxes = document.querySelectorAll('input');
const onChange = e => checkboxes.forEach(n => n.checked &&= n === e.target);
checkboxes.forEach(n => n.addEventListener('change', onChange));.filter должен возвращать булево значение. TRUE - оставить элемент, FALSE - удалитьfunction Validation(arr) {
return arr.filter((el) => {
return typeof el.age === "number"
&& el.full_name !== undefined
&& el.full_name.charAt(0) === el.full_name.charAt(0).toUpperCase()
&& el.gender !== undefined
&& el.gender.charAt(0) === el.gender.charAt(0).toUpperCase()
&& el.note !== undefined
&& el.note.charAt(0) === el.note.charAt(0).toUpperCase()
&& el.state !== undefined
&& el.state.charAt(0) === el.state.charAt(0).toUpperCase()
&& el.city !== undefined
&& el.city.charAt(0) === el.city.charAt(0).toUpperCase()
&& el.country !== undefined
&& el.country.charAt(0) === el.country.charAt(0).toUpperCase()
}function firstLetterIsUpper(str) {
return typeof(str) === 'string'
&& str.length
&& str.charAt(0) === str.charAt(0).toUpperCase()
}
function Validation(arr) {
return arr.filter((el) => {
return typeof el.age === "number"
&& firstLetterIsUpper(el?.full_name)
&& firstLetterIsUpper(el?.gender)
&& firstLetterIsUpper(el?.note)
&& firstLetterIsUpper(el?.state)
&& firstLetterIsUpper(el?.city)
&& firstLetterIsUpper(el?.country)
} outline: none;<div class="btn-group" role="group" aria-label="Basic radio toggle button group">
<input type="radio" class="btn-check" name="btnradio" id="btnradio1" autocomplete="off" checked>
<label class="btn btn-outline-primary shadow-none" for="btnradio1">Radio 1</label>
<input type="radio" class="btn-check" name="btnradio" id="btnradio2" autocomplete="off">
<label class="btn btn-outline-primary shadow-none" for="btnradio2">Radio 2</label>
<input type="radio" class="btn-check" name="btnradio" id="btnradio3" autocomplete="off">
<label class="btn btn-outline-primary shadow-none" for="btnradio3">Radio 3</label>
</div> Стрелка=>ничего не привязывает. У функции просто нетthis.
При получении значенияthis– оно, как обычная переменная, берётся из внешнего лексического окружения.
const obj = {
w() {
console.log('w', this);
},
x: function () {
console.log('x', this);
},
y: this,
z: () => {
console.log('z', this);
},
};
obj.w(); // obj
obj.x(); // obj
console.log('y', obj.y); // Window
obj.z(); // Windowthis тот же, что и снаружи:const a = this; // Window
const obj = {
b: this, // тоже Window
}
a === obj.b // true <div id="test">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Adipisci alias aliquam est fugit mollitia nisi quam qui! Aliquam aliquid consequatur dolorem ea, expedita ipsam laborum, mollitia praesentium, quidem sed voluptas?</div>
<style>
#test {
color: red;
}
#test:hover {
color: green;
transition: color 3s ease;
}
</style>#test {
color: black;
transition: color 1s ease;
}
#test:hover {
color: red;
transition: color 5s ease;
}
type:type ResponseStatus = "error" | "success";intefcace:interface ApiResponse {
status: ResponseStatus;
}type:namespace Api {
type Status = "error" | "success";
type Response = {
status: Status;
};
}
package.json (npm init -y). В приведённом Вами коде используются ES6-импорты (ESM-импорты), которые сразу не будут работать в Node.js, т.к. в нём используются CommonJS-импорты. Для решения данной проблемы у Вас есть два пути:"type": "module"в package.json:{
...
"type": "module",
...
}- import * as crypto from 'crypto';
+ const crypto = require('crypto');$ node .
cVoADkhcldK+mYC3Id5vhkxOr4NwVspTcgF56RiRG0CzcnOcBwcELKi1YnBNySmZugpjJNHuCU7ePjwVadqfAw== pointer-events: none. Вот и все. postsFile = open('posts.txt','r+') # Открываем файл на чтение и запись
posts = postsFile.read().splitlines() # Читаем файл и помещаем строки в список postsу вас будет подключение к базе данных, создание таблицы, если надоpostsFile.writelines(url+'\n') # И ссылку записываем в файл posts.txt"use strict";
const {src, dest} = require("gulp");
const gulp = require("gulp");
const gulpCopy = require('gulp-copy');
const outputPath = "dist/";
var path = {
build: {
html: "dist/",
images: "dist/"
},
src: {
html: "src/*.html",
images: ['src/img/**/*.*']
}
}
function images() {
return src(path.src.images)
.pipe(gulpCopy(outputPath, {prefix: 1}))
.pipe(dest(path.build.images));
}
const build = gulp.series(images);
exports.images = images;
exports.default = build;