小编Noo*_*oob的帖子

什么是 Array.prototype.sort() 时间复杂度?

根据 Mozilla 文档:

排序的时间和空间复杂度无法保证,因为它取决于实现。

假设它不是至少安全O(n^2)吗?有没有关于它是如何实施的更详细的数据?谢谢。

javascript

19
推荐指数
3
解决办法
1万
查看次数

根据用户是否登录,在 React 中更改 Navbar 值的正确方法是什么?

我是 React 的新手,我正在努力了解如何以正确的方式做事。所以我有一个导航栏,它根据用户是否登录显示不同的链接。如果用户登录,我会设置一个 cookie loggedIn=true。比在我的 Navbar 组件中,我使用以下命令检查这些 cookie window.setInterval:

import React, { Component } from 'react'
import { NavLink, Link } from "react-router-dom"
import styles from './Navbar.module.css'

class Navbar extends Component {
  constructor() {
    super()

    this.state = {
      loggedIn: false
    }
  }

  componentDidMount() {
    if (document.cookie.split(';').filter((item) => item.trim().startsWith('logedIn=')).length) {
      this.setState({ loggedIn: true })
    }
    window.setInterval(() => {
      if (document.cookie.split(';').filter((item) => item.trim().startsWith('logedIn=')).length) {
        this.setState({ loggedIn: true })
      }
      else {
        this.setState({ loggedIn: false })
      }
    }, 500)
  }

  render() …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

7
推荐指数
1
解决办法
6797
查看次数

反应重置和保留状态?

默认情况下,React 会在组件停留在同一位置时保留组件的状态。通常,这正是您想要的,因此作为默认行为是有意义的。

示例取自新的React 文档。

Example 1 - the same position、codesandbox、(相关代码):

  return (
    <div>
      {isPlayerA ? (
        <Counter person="Taylor" />
      ) : (
        <Counter person="Sarah" />
      )}
      <button onClick={() => {
        setIsPlayerA(!isPlayerA);
      }}>
        Next player!
      </button>
    </div>
  ); 
Run Code Online (Sandbox Code Playgroud)

Example 2 - different position,codesandbox,(相关代码):

  return (
    <div>
      {isPlayerA &&
        <Counter person="Taylor" />
      }
      {!isPlayerA &&
        <Counter person="Sarah" />
      }
      <button onClick={() => {
        setIsPlayerA(!isPlayerA);
      }}>
        Next player!
      </button>
    </div>
  );
Run Code Online (Sandbox Code Playgroud)

我很困惑为什么中的位置Example 2被认为是不同的? …

javascript reactjs

6
推荐指数
1
解决办法
449
查看次数

Discord JS - 如何对同一个嵌入多次做出反应?

我只得到了第一个“钱袋”表情符号来对频道中的最新消息做出反应,这是机器人发送的嵌入,但是,我希望机器人对新嵌入做出反应,同时使用“钱袋”和“票”表情符号,到目前为止,它会与“钱袋”表情符号做出反应,但是当它尝试与“票”表情符号做出反应时,会出错。如何让机器人对带有两个表情符号的新嵌入做出反应?


    if (message.content === '-new') {

        const filter = (reaction, user) => {
            return ['', ''].includes(reaction.emoji.name) && user.id === message.author.id;
        };

        const embed = new Discord.RichEmbed()

        .setTitle('Ticket')

        .setColor('DC3BF5')

        .setDescription('Thank you for showing interest in purchasing a commission from the Quadra Build Team, or for lending us your time through Support. Make sure you have read our #terms-of-service channel before requesting a commission. We are glad to make your prolific ideas & …
Run Code Online (Sandbox Code Playgroud)

javascript bots discord discord.js

4
推荐指数
1
解决办法
4793
查看次数

Array.prototype.every() 布尔值

我对这种.every()行为感到困惑。

let a = [true, true, true]
a.every(Boolean) //  returns true

let b = [true, false, true]
b.every(Boolean) // returns false

typeof false // returns 'boolean'
Run Code Online (Sandbox Code Playgroud)

我不明白为什么b.every(Boolean)返回false。我想念什么?

javascript

3
推荐指数
1
解决办法
1399
查看次数

为什么我通常必须指定任何HTTP状态代码?它有什么好处?

我已经阅读了一些有关HTTP状态的文章,但仍然不确定为什么要在我的应用程序中指定它们。假设某个用户在尝试登录时提供了错误的密码。在我的快速应用中,我可以通过以下方式发送回复:

 res.status(401).json({ message: 'Wrong password' })
Run Code Online (Sandbox Code Playgroud)

要么

res.json({ message: 'Wrong password' })
Run Code Online (Sandbox Code Playgroud)

然后,我的应用程序逻辑基于该 message值。我知道在第二种情况下状态码将会是200 OK,但是我为什么要关心它呢?

javascript http

2
推荐指数
1
解决办法
40
查看次数

为什么我的正则表达式在客户端上工作而在服务器上失败?

我正在使用一个应该验证用户名的正则表达式。用户名应仅包含英文字母、数字或下划线。客户端代码输入按预期工作,除了字母、数字和下划线外,不允许输入任何内容:

              <input
                type="text"
                name="username"
                id="username"
                required
                minlength="2"
                maxlength="14"
                pattern="[A-Za-z0-9_]+"
                class="form__input"
              />
Run Code Online (Sandbox Code Playgroud)

当我尝试提交包含以下内容的用户名时 !,浏览器验证不允许它发生。

现在,在我的服务器端(Express 应用程序 + 是的)我使用相同的正则表达式,但是,它没有按预期工作:

    const shema = yup.object().shape({
  username: yup
    .string()
    .required()
    .trim()
    .min(2)
    .max(14)
    .matches(/[A-Za-z0-9_]+/, 'Only English letters, numbers, and underscore allowed (2-14 characters)')})
Run Code Online (Sandbox Code Playgroud)

当我使用 Postman 并使用包含的用户名发送 post 请求时!,验证不起作用。所有其他字段都按预期验证,因此,我的正则表达式可能有问题?谢谢你。

javascript regex node.js

1
推荐指数
1
解决办法
32
查看次数

标签 统计

javascript ×7

reactjs ×2

bots ×1

discord ×1

discord.js ×1

http ×1

node.js ×1

regex ×1