Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript下拉选项0-100递增0.5_Javascript - Fatal编程技术网

Javascript下拉选项0-100递增0.5

Javascript下拉选项0-100递增0.5,javascript,Javascript,我有一个javascript函数,它为我的页面上的下拉列表创建值。我现在正在增加5,0-100 我试图将其改为增量0.5,但它只返回0-100,没有增量 我的预期输出是0.5,1,1.5,2,2.5。。。一百 以下是我目前的功能: /** * Generate our possible error scores */ function generateErrorScores() { var min = 0, max = 100, multiplier

我有一个javascript函数,它为我的页面上的下拉列表创建值。我现在正在增加5,0-100

我试图将其改为增量0.5,但它只返回0-100,没有增量

我的预期输出是0.5,1,1.5,2,2.5。。。一百

以下是我目前的功能:

/**
 * Generate our possible error scores
 */
function generateErrorScores() {

    var min = 0,
        max = 100,
        multiplier = 5, // Tried .5 here
        list = [];

    // Loop between min and max, increment by multiplier
    for (var i = min; i <= max; i++) {
        if (i % multiplier === 0) {
            list.push(i);
        }
    }

    return list;
}

console.log(generateErrorScores())
小提琴:


我有一种感觉,如果I%multiplier===0{会导致问题,但我不确定如何使其适应.5的增量。

您只需将I增加0.5,就可以得到预期的输出,这里不需要额外检查

 for (var i = min; i <= max; i+=0.5) {
/** *生成我们可能的错误分数 */ 函数生成器{ var min=0, 最大值=100, 乘数=0.5, 列表=[]; //在最小值和最大值之间循环,按乘数递增
对于var i=min;i您只需将i增加0.5,就可以得到预期的输出,这里不需要额外检查

 for (var i = min; i <= max; i+=0.5) {
/** *生成我们可能的错误分数 */ 函数生成器{ var min=0, 最大值=100, 乘数=0.5, 列表=[]; //在最小值和最大值之间循环,按乘数递增 对于var i=min;i 函数生成器{ var min=0, 最大值=100, 增量=0.5, 列表=[]; //在最小值和最大值之间循环,按乘数递增 对于var i=min;i 函数生成器{ var min=0, 最大值=100, 增量=0.5, 列表=[]; //在最小值和最大值之间循环,按乘数递增
对于var i=min;i我认为这样做更容易

for (var i = min; i <= max; i+=0.5) {
    list.push(i);
}

我认为这样做会更容易

for (var i = min; i <= max; i+=0.5) {
    list.push(i);
}

如果您只需要列表[0,0.5,1,1.5,…,100],您可以执行以下操作:

/** *生成我们可能的错误分数 */ 函数生成器{ 常数乘数=0.5 返回[…Array100/multiplier+1].mapx,i=>i*multiplier }
console.loggenerateErrorScores如果您只需要列表[0,0.5,1,1.5,…,100],您可以执行以下操作:

/** *生成我们可能的错误分数 */ 函数生成器{ 常数乘数=0.5 返回[…Array100/multiplier+1].mapx,i=>i*multiplier } console.loggenerateErrorScores如果i%multiplier==0没有任何作用。如果您需要列表中的乘数,则可以使用该方法,但在本例中,您需要分数

有趣的是,您的注释是正确的,但代码没有这样做。有效的解决方案如下:

function generateErrorScores() {

    var min = 0,
        max = 100,
        segment = .5,
        list = [];

    // Loop between min and max, increment by segment
    for (var i = min; i <= max; i += segment) {
        list.push(i);
    }

    return list;
}

console.log(generateErrorScores())
if i%multiplier===0没有任何作用。如果您需要列表中的乘数,则可以使用它,但在本例中,您需要分数

有趣的是,您的注释是正确的,但代码没有这样做。有效的解决方案如下:

function generateErrorScores() {

    var min = 0,
        max = 100,
        segment = .5,
        list = [];

    // Loop between min and max, increment by segment
    for (var i = min; i <= max; i += segment) {
        list.push(i);
    }

    return list;
}

console.log(generateErrorScores())

为什么不直接用var i=min来做呢?为什么不直接用var i=min来做呢?为什么不直接用乘法器来做呢?这很奇怪。我的意思是,有什么理由在这里使用模?为什么不直接用var i=min来做呢?为什么不直接用i++来做呢?为什么不直接用i+=0.5来做呢?为什么不直接用var i=min来做呢用乘法器来增加?。这很奇怪。我的意思是,你有什么理由在这里使用模吗?。。