小编eag*_*der的帖子

JS中有多少数据类型,它们是什么?

我开始读一本书,Javascript for Kids.其中作者声明有三种数据类型:

  • 数字
  • 字符串
  • 布尔

然而,根据W3Schools,有四个:

  • 数字
  • 字符串
  • 阵列
  • 对象

我想知道哪一个是正确的.

javascript types

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

无法从“act-compat.js”中找到模块“react-dom/test-utils”

我似乎无法解决为什么收到此错误:这是我的配置:

lang-js
react - 15.3.1
react-dom - 15.3.1
react-testing-library - 6.0.0
jest - 23.6.0

lang-js
import React from 'react';
import { render, fireEvent, cleanup } from 'react-testing-library';

afterEach(cleanup);

test('loads and displays ', async() => {

})
Run Code Online (Sandbox Code Playgroud)

我在页面上评论了一个未解决的GH 问题react-testing-library。提前致谢

reactjs jestjs react-testing-library

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

AJV 自定义关键字验证

我正在使用 AJV 库来验证我的 JSON 模式。我希望能够验证Startdate为字符串。如果它不是字符串,则应将其转换为N/A. 目前,它仅转换undefinedN/A.

但是,在这些情况下,它不会按预期工作:

  • null -> "空"
  • 0 --> "0"
  • 真 --> "真"

如果我想将上述所有内容转换为N/A字符串,我的 customKeyword 函数会是什么样子?

JSON 响应:

jsonResponse: {
  "Issue": {
    "StartDate": "December 17, 1995 03:24:00"
  }
}
Run Code Online (Sandbox Code Playgroud)

架构:

var ajv = new Ajv({
    useDefaults: true,
    coerceTypes: 'undefined'
});

const schema = {
    "type": "object",
    "properties": {
        "Issue": {
            "type": "object",
            "properties": {
                "StartDate": {
                    "type": "string"
                    "default": "N/A",
                    "stringTypeChecker"
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

添加关键字函数: …

javascript validation json jsonschema ajv

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

用键反应创建元素

我正在尝试渲染不带键的JSX的react组件数组。问题不幸的是,当我尝试在数组中设置键时,我遇到了JS错误:

Uncaught (in promise) TypeError: Cannot assign to read only property 'key' of object '#<Object>'
Run Code Online (Sandbox Code Playgroud)

这是代码:

import React, { Component } from 'react';

class Test extends Component {

  mapChildObjects = () => {
    const { children } = this.props;
    let arr = [];

    for (let i = 0; i < children.length; i++) {
      arr.push(React.createElement(children[i]));
      arr[i].key = i;
    }
    return arr;
  }

  render() {

    return (
      <div>
        <div className={s.content}>
          {this.mapChildObjects()}
        </div>
      </div>
    );
  }
}


export default Test

Run Code Online (Sandbox Code Playgroud)

阅读文档后:https : …

javascript reactjs

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

如何使用JS显示变量,即3的倍数?

这是我的代码.我能够显示数字1-100,但我无法弄清楚如何操纵代码跳过不是3的倍数的数字.我有一种感觉,我必须使用逻辑运算符.

for ( var i = 1 ; i < 100 ; i++ ){
   document.write(i + "<br>");
 if ( i == 100) {
    break;
 }
}
Run Code Online (Sandbox Code Playgroud)

javascript variables loops

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