如何确定日期(格式:01.01.0001
),知道当前星期几(从 1 到 7)?
例如:当前星期 - 4
、日期 - 12.09.2024
。
如果输入周数5
,则日期将为13.09.2024
。
如何实施?
如何确定日期(格式:01.01.0001
),知道当前星期几(从 1 到 7)?
例如:当前星期 - 4
、日期 - 12.09.2024
。
如果输入周数5
,则日期将为13.09.2024
。
如何实施?
需要创建一个div,其中包含产品的价格及其名称,这样当您点击某个div时,其价格会反映在段落中,而当选择多个div时,总金额会写入段落中
到目前为止,我的头脑只够做到这一点:
let p = document.querySelector("p");
let arr = [];
let divs = document.querySelectorAll("div");
for (const div of divs) {
div.addEventListener("click", function () {
if (div.click) arr.push(div.textContent);
p.innerHTML = "Итого:" + arr ;
});
}
<div>Яблоки: 200</div>
<div>Вишни: 300</div>
<div>Груши: 250</div>
<p></p>
我会立即指出,作业的文本没有解释以什么格式在 html 中创建和排列 div,即可以以对您来说方便且合乎逻辑的方式进行。我目前正在尝试从 div 创建对象并从中获取价格的选项。还有一些想法,但一般都处于思考阶段。
根据我的任务,我需要以下布局:
<a href="1.html">111</a>
<a href="2.html">222</a>
<a href="3.html">333</a>
获取以下对象数组:
[
{
text: '111',
href: '1.html',
},
{
text: '222',
href: '2.html',
},
{
text: '333',
href: '3.html',
},
]
我得到以下代码:
let arr = [...document.querySelectorAll("a")];// создаю массив из а
let res = []// создаю массив в который буду пушить результат
for (const el of arr) { //перербираю все элементы массива
const obj = Object.fromEntries( // создаю обЪект, в котором буду перебирать массив
arr.map((text, href) => [ //перебираю массив
,
{
text: el.text, // формирую объект
href: el.href,
},
])
);
res.push(obj) //пушу объект в массив
}
console.log('res', res)// результате я получаю объект с двумя уровнями вложенности, которые мне не нужны.
<a href="1.html">111</a>
<a href="2.html">222</a>
<a href="3.html">333</a>
我知道我错了,但是使用 entrise 和 fromEntries 对我来说是新的,所以我寻求帮助)
我正在创建一个带有状态按钮的待办事项列表。单击此按钮时,会显示一个弹出窗口,该按钮最初不在页面上,而是随输入的任务一起出现。问题是,对于第一个任务,按钮起作用并显示弹出窗口,但是如果您输入后续任务,按钮不起作用,请帮我找出错误是什么
//создание задачи
const inputField = document.querySelector('#inputField');
const clearButton = document.getElementById('clearButton');
const form = document.querySelector('#form');
const taskList = document.querySelector('#taskList');
inputField.addEventListener('input', function() {
clearButton.style.display = this.value ? 'block' : 'none';
});
clearButton.addEventListener('click', function() {
inputField.value = '';
clearButton.style.display = 'none';
});
form.addEventListener('submit' ,(event) => {
event.preventDefault();
const taskText = inputField.value
const taskHTML = `<li class="TS">
<span>${taskText}</span>
<button data-action="start" id="btn-status">Открыто</button>
</li>`
taskList.insertAdjacentHTML('beforeend',taskHTML);
inputField.value = "";
inputField.focus();
//пробовал создать функцию,которая обращается к родителю
taskList.addEventListener('click',popupTask)
function popupTask(event){
if(event.target.dataset.action === "start"){
const parentNode = event.target.closest('.TS');
parentNode.add()
}
}
//popup
document.getElementById("btn-status").addEventListener("click",function(){
document.getElementById("myModal").classList.add("open")
})
document.getElementById("close-myModal-btn").addEventListener("click",function(){
document.getElementById("myModal").classList.remove("open")
})
这是添加任务的块
<div class="block-two">
<div class="list-block">
<p id="p1"><b>Задачи</b></p>
<p id="p2"><b>Статус</b></p>
</div>
<div class="task-status">
<ul class="ts-list" id="taskList">
<!-- <li class="TS">
<span>Полить цветы</span>
<button data-action="start" id="btn-status">Открыто</button>
</li> -->
</ul>
</div>
</div>
这是如果我单击后续任务的按钮时弹出的错误(第一个任务除外,弹出窗口显示在第一个任务上): TypeError:parentNode.add is not a function at HTMLUListElement.popupTask
给定以下对象:
let data = {
2018: {
11: {
29: [1, 2, 3],
30: [4, 5],
},
12: {
30: [6, 7],
31: [8, 9],
},
},
2019: {
12: {
29: [10, 11],
30: [12, 13],
31: [14, 15],
}
},
}
将该对象的所有元素写入某个数组,如下所示:
[1、2、3、4、5、6、7、8、9、10、11、12、13、14、15]
我雕刻了以下内容:
let res = [];
for (const elem in data) { // создаю элемент
sum = (elem) =>
elem instanceof Object // проверка является ли элемент объектом
? Object.values(elem).reduce((acc, n) =>res.concat(acc + sum(n)), 0) // здесь я использую свой опыт по сложению значений массивов, находящихся внутри объектов и чуточку фантазии)
: res.push(elem);
}
console.log(sum(data));
一切都会好的,但是控制台中的结果是这样的: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, '1,2 ,3,4,5,6,7,8,9,01,2,3,4,5,6,7,8,9,1,2,3,4,5,01,…12,13, 14,15, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,1415']。现在我不明白他为什么要加上这句话)
如果我这样写函数:
sum = (elem) =>
elem instanceof Object
? Object.values(elem).reduce((acc, n) =>res.concat(sum(n)), 0)
: res.push(elem);
,然后它打印数字四次。现在继续啃国外的stack、mdn和一本js教材。如果我想到一个好主意,我会纠正它)