我是 JavaScript 的新手,目前正在研究 Discord 机器人
我编写了一个响应消息的机器人,但是当我输入大写字母或给空间时,机器人没有响应,请帮我解决这个问题
这是我的代码,如果我提供“嗨兄弟”之类的输入,
它不会响应
bot.on("message", async message => {
if(message.author.bot || message.channel.type == 'dm') return;
let prefix = "-";
let messageArray = message.content.split(" ");
let cmd = messageArray[0];
let args = messageArray.slice(1);
if(cmd === `${prefix}hibro`) {
return message.reply("Hi bro!")
}
)}
Run Code Online (Sandbox Code Playgroud) 我有一个选择框位于其中,它还包含一个输入,我想通过它找到必要的项目。我像这样进行了搜索,首先我接受一个数组,然后将其小写并搜索匹配项。不知何故,我需要匹配所需的 ID 以排除不可用的 ID 并显示必要的复选框
\n简单来说,我想过滤我的查询并实时显示它。
\n我必须只使用 vanila JS
\nlet search = document.getElementById("search");\nlet s = document.querySelectorAll("input[type=checkbox][name=one]");\n\n//s.forEach((item) => {\nsearch.addEventListener("input", () => {\n let data = [];\n\n let count = Array.from(s).map((i) => i.value.toLowerCase().includes(search.value.toLowerCase()));\n\n console.log(count);\n\n});\n//});Run Code Online (Sandbox Code Playgroud)\r\nlabel { display: block; }Run Code Online (Sandbox Code Playgroud)\r\n<div id="checkboxes2">\n <div class="control">\n <input class="input" type="text" placeholder="\xd0\x9f\xd0\xbe\xd0\xb8\xd1\x81\xd0\xba" id="search" />\n <span class="icon is-small is-left">\n <span class="searchIcon"></span>\n </span>\n </div>\n <label for="one2" class="select_label">\n <input type="checkbox" value="\xd0\x9f\xd0\xbe\xd0\xba\xd0\xb0\xd0\xb7\xd0\xb0\xd1\x82\xd1\x8c \xd0\xb2\xd1\x81\xd0\xb5" name="one" id="one2" />\xd0\x9f\xd0\xbe\xd0\xba\xd0\xb0\xd0\xb7\xd0\xb0\xd1\x82\xd1\x8c \xd0\xb2\xd1\x81\xd0\xb5\n <span class="select_label-icon"></span\n ></label>\n <label for="one2" class="select_label">\n <input …Run Code Online (Sandbox Code Playgroud)我尝试了很多东西,但是都没有用。我想知道这是否不可能吗?我知道“绑定”的“正常”方式,但是箭头功能更具可读性,我更喜欢使用它们。
为了更好地理解我的问题,我制作了此示例代码来尽可能全面地说明问题。
class MyClass_XY {
constructor(zID) {
let ref = document.getElementById(zID);
this.name = zID;
this.Info = ref.querySelector('span');
this._Bt_Plus = ref.querySelector('.plus');
this._bt_Stop = ref.querySelector('.stop');
this.Nbre = 0;
// this.stop = false; // I don't whant this, because this is a small sample code of something more complex
this._Bt_Plus.onclick = e => this._f_Bt_Plus_click(e);
this._bt_Stop.onclick = e => this._f_Bt_Stop_click(e);
/*
this.fct_Ref = null;
this._Bt_Plus.addEventListener('click', this.fct_Ref = this._f_Bt_Plus_click.bind(this) , false );
*/
}
_f_Bt_Plus_click(e) {
e.stopPropagation();
console.log(e.target.innerText);
this.Nbre++,
this.Info.innerText = this.Nbre.toString();
}
_f_Bt_Stop_click(e) { …Run Code Online (Sandbox Code Playgroud)我想使用Object.fromEntriesand根据键或值过滤对象Object.entries,但是当我尝试使用逻辑 OR || 时 我不能做我想做的事。有没有一种好的解决方案,无需引入其他方法或循环?
const object1 = { a: 1, b: 2, c: 3 };
const object4 = Object
.fromEntries(Object
.entries(object1)
.filter(([key, val])=>key!=="a"||val!== 2));
// logic goes wrong!
console.log(object4);
// { a: 1, b: 2, c: 3 } I want { c: 3 }, filter any key with "a" or value with 2Run Code Online (Sandbox Code Playgroud)
我想要一个正确的布尔 OR,如果它的任何参数为 true,则返回 true,否则返回 false。我读过 JS 做了一些奇怪的事情,但是如何排序呢?
向所有可能读到这篇文章的人致敬!我想提前感谢任何帮助或指导进一步研究这个主题,因为我不确定我是否完全理解逻辑。
我正在创建一个 React 应用程序,它使用按钮组件,并从由名称组成的外部本地 JSON 数组获取它的 props。例如:
import React from 'react';
import * as buttonNames from '/localdirectory/buttonNames.json';
class Buttons extends React.Component {
render() {
return (
{buttonNames.map((buttonName, i) => {
return <button>{buttonName}</button>
}}
);
}
}
Run Code Online (Sandbox Code Playgroud)
JSON 数组如下所示:
[
"10A",
"10B",
"10C",
"10D",
"10E",
"10F"
]
Run Code Online (Sandbox Code Playgroud)
这是我正在尝试做的事情的一个简化示例,但是从我的角度来看,预期结果是映射函数应该迭代 JSON 数组并将每个变量分配给变量,buttonName然后使用该变量通过innerHTML 创建 6 个不同的按钮由数组项的内容填充。
然而,程序会抛出一个错误,指出map未从 JSON 数组导出,为什么它需要放在第一位?程序不应该简单地导入它并将其视为具有内置 JS 方法(例如map和 )的标准数组吗?forEach
我尝试过将文件作为 CSV 处理并使用 D3 导入,但是这会返回一个承诺,但我不希望出现这种情况,因为我正在使用它加载 UI 并且包含的文件不是buttonNames特别大的。使用JSON.parse()也不起作用,因为程序声明目标已经是一个对象。
感谢并接受任何建议!
我试图在 EJS 页面上仅显示键和值。
<span><%= JSON.stringify(results.conversion_rates) %></span>
Run Code Online (Sandbox Code Playgroud)
留给我
{"USD":1,"AED":3.6721,"ARS":81.0455,"AUD":1.3564,"BGN":1.6324}
Run Code Online (Sandbox Code Playgroud)
我怎样才能删除括号和引号?
如果有帮助,这是我的 server.js 路由:
app.get('/results', (req, res) => {
const query = req.query.q;
axios
.get(`https://v6.exchangerate-api.com/v6/a66b8aae93f6e7abafe3aab5/latest/${query}`)
.then(function (response) {
const currencyPair = `Conversion Rates for ${query}`;
console.log(response)
res.render('results', {
currencyPair,
results: response.data,
});
})
});
Run Code Online (Sandbox Code Playgroud) javascript ×6
node.js ×2
api ×1
discord.js ×1
ecmascript-6 ×1
ejs ×1
es6-class ×1
express ×1
html ×1
import ×1
json ×1
reactjs ×1