相关疑难解决方法(0)

Math.random会重复吗?

对于不同的JavaScript实现Math.random:

抛开记忆和长度问题,以下最终会有一个永远重复的数字序列(例如,它只取决于内部种子,当种子回到它的起始点时,数字会重复)?

sequence = Math.random();
while(true){
    sequence += ', ' + Math.random();
}
Run Code Online (Sandbox Code Playgroud)

每个客户端是否具有相同的重复序列(例如,客户端不将特定于客户端的数据合并到随机数生成过程中)?


我问,因为如果可能的数字序列是有限的子集,那么像生成具有Math.random的UUID这样的事情将有更大的碰撞机会.

javascript random

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

在 TypeScript 中创建 GUID - 函数在 JS 中有效但在 TS 中无效

我正在尝试使用此处发布的解决方案在我的 angular4/TypeScript Web 应用程序中创建一个 GUID 类型的字符串。

这是我正在编写的函数:

function uuidv4() {
  return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c =>
    (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
  )
}
console.log(uuidv4())
Run Code Online (Sandbox Code Playgroud)

TypeScript 给了我以下错误:

Operator '+' cannot be applied to types 'number[]' and '-1000'.
Run Code Online (Sandbox Code Playgroud)

我需要更改什么才能使此 TS 兼容?

谢谢!

typescript angular

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

独特的随机数生成器Javascript

我正在努力制作宾果游戏.我在很多地方寻找过独特的发电机,但我似乎无法找到它.我试图制作自己的,但是一旦它实际上击中了一个数字,那就是无限循环.我尝试过一个简单的代码,理论上应该可以工作,但由于某种原因,事情会通过.我能做什么!?

var bc = [];
for (var i = 0; i < 5; i++) {
  var r = Math.floor(Math.random()*20+1) + 0;
  if(!(r in bc)){
    bc.push(r);     
    }
    else
    {
    i--;
    }
}
____________________________________________
____________________________________________
____________________________________________
b1=0;
b2=0;
b3=0;
b4=0;
b5=0;
var bc = [b1,b2,b3,b4,b5]
var bnc = function(){
    var n = Math.floor(Math.random() * 5+1)+0;
    var n2 = Math.floor(Math.random() * 5+1)+0;
    b1 = n;
    var a1 = true;
    var as = false;
    while(a1){
        var c = n;
        if(c===b1||c===0 ||as!==false){
        c = n2; …
Run Code Online (Sandbox Code Playgroud)

javascript random generator

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

使用Math.random获取相同值的概率

要求是在用户单击"提交"按钮时向数据库发送唯一ID.所以我使用的是Javascript Math.random方法.我只是想知道获得相同数量和使用的位数的机会或可能性Math.random.

javascript random probability entropy

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

上传到Azure Blob时,请求的资源上不存在"Access-Control-Allow-Origin"标头

我一直在努力争取这一天约一天.我正在直接测试Azure Blob存储上传并获得可怕的CORS问题."XMLHttpRequest cannot load https://tempodevelop.blob.core.windows.net/tmp/a4d8e867-f13e-343f-c6d3-a603…Ym0PlrBn%2BU/UzUs7QUhQw%3D&sv=2014-02-14&se=2016-10-12T17%3A59%3A26.638531. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8000' is therefore not allowed access. The response had HTTP status code 403."

我已经尝试过的事情:

  1. 将CORS设置为所有主机: 在此输入图像描述
  2. 尝试在本地和heroku上托管我的应用程序
  3. 确保我可以使用其他工具上传文件(Azure存储资源管理器)
  4. 将我的AccessPolicy配置为'rwdl',我肯定会获得访问签名(在单元测试中验证).

整个代码可以在这里找到:https://github.com/mikebz/azureupload

但相关部分在这里,前端上传:

<script>

    /* 
     * not a true GUID, see here: http://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript
     */ 
    function guid() {
        function s4() {
            return Math.floor((1 + Math.random()) * 0x10000)
            .toString(16)
            .substring(1);
        }
        return s4() + s4() + '-' …
Run Code Online (Sandbox Code Playgroud)

azure azure-storage-blobs cors

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

覆盖函数的toString函数

我想通过答案生成GUID字符串.

'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
    var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
    return v.toString(16);
});
Run Code Online (Sandbox Code Playgroud)

现在,我想把它付诸实践toString,比如:GUID.NewGuid().toString().

我试过(不工作):

let GUID = function () {};
GUID.NewGuid = function () {};

GUID.NewGuid.prototype.toString = function () {
    let guid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
        let r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });

    return guid;
};
Run Code Online (Sandbox Code Playgroud)

未捕获的TypeError:无法读取未定义的属性'toString' console.log(GUID.NewGuid().toString()); …

javascript

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

用于管理多个 React 组件实例的 Redux 状态形状?

使用 React 和 Redux 开发一个小项目,其中我正在制作本质上是 Trello 克隆或看板系统。但我无法弄清楚如何为 Redux 构建我的状态,这样事情就不会变得奇怪。

本质上,用户需要能够<Board/>通过 React 创建组件的多个实例。每个<Board/>实例都有一个标题。继续深入,每个实例还可以有一个自己的组件实例</Board>的数组。<List/>每个<List/>实例又可以有自己的<Card/>组件实例。

这就是我感到困惑的地方。在 React 中,这很简单——每个实例<Board/>和每个实例<List/>只管理自己的状态。但我不知道如何重构一切,以便 Redux 管理所有状态,但每个组件实例都会收到正确的状态切片。

到目前为止,我已经构建了 Redux 状态,如下所示。任何帮助表示赞赏!

{
  boards: [
    {
      title: 'Home',
      lists: [
        {
          title: 'To Do',
          cards: [
            { title: 'Finish this project.'},
            { title: 'Start that project.'}
          ]
        },
        {
          title: 'Doing',
          cards: []
        },
        {
          title: 'Done',
          cards: []
        }
      ]
    }
  ] …
Run Code Online (Sandbox Code Playgroud)

kanban reactjs redux react-redux

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

如何在 SAP UI5 代码中生成 UUID?

我知道如何在 node.js 中使用 npm 管理的库(例如uuid. 但是,在基于浏览器的 SAP UI5 JavaScript 代码中执行此操作的好方法是什么?

javascript uuid sapui5

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

生成256位随机数

我需要生成一个 256 位随机无符号数作为十进制字符串(与之前生成的任何内容发生冲突的概率几乎为零)。

如何在 JavaScript 中(在浏览器中)执行此操作?

javascript random numbers bigint

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

LaunchDarkly 中如何识别用户?

我正在使用 LaunchDarkly 进行功能标志管理,但我不知道从哪里获取当前用户的密钥。以下是其 React SDK 的 LD 文档中的示例:

import { withLDProvider } from 'launchdarkly-react-client-sdk';
export default withLDProvider({
  clientSideID: 'your-client-side-id',
  user: {
    "key": "aa0ceb",
    "name": "Grace Hopper",
    "email": "gracehopper@example.com"
  },
  options: { /* ... */ }
})(YourApp);
Run Code Online (Sandbox Code Playgroud)

我如何得到这个key?键 和 和有什么不一样clientSideID

javascript reactjs launchdarkly feature-flags

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