document.write 的输出问题

Output issues with document.write

我正在尝试编写一个 javascript 来计算数组中负数、零数和正数的数量。当我 运行 这个脚本时它说 "ReferenceError: document is not defined"

我不知道如何定义文档,因为我的理解是 document.write 是 node.js 的一部分?让它输出 neg、zero 和 pos 变量的最佳方法是什么?

#!/usr/bin/env node

// Function: counter
// Parameter: -3, -1, 0, 0, 0, 4, 17, 29, 30
// Returns the number of each in the array
var input = new Array(-3, -1, 0, 0, 0, 4, 17, 29, 30);
var zero = 0;
var neg = 0;
var pos = 0;

function counter(input, zero, neg, pos)
{
    switch (input)
    {
       case (input < 0):
       neg++;
       break;

       case (input == 0):
       zero++;
       break;

       case (input > 0):
       pos++;
       break;
    } 

return document.write(neg, zero, pos);
}

 counter(input);

所以我使用 console.log 让它工作,但现在输出是错误的。我的开关似乎没有正确评估阵列。无论输入值是多少,它都会打印三个零

#!/usr/bin/env node

// Function: counter
// Parameter: -3, -1, 0, 0, 0, 4, 17, 29, 30
// Returns the number of each in the array
var input = new Array(-3, -1, 0, 0, 0, 4, 17, 29, 30);
var zero = 0;
var neg = 0;
var pos = 0;

function counter(input, zero, neg, pos)
{
  switch (input)
  {
     case (input < 0):
            neg ++;
     break;

     case (input == 0):
            zero ++;
     break;

     case (input > 0):
            pos ++;
     break;
    }   
}

counter(input);

console.log(neg, zero, pos);

您需要对数组中包含的所有元素进行循环,如果您只使用一个参数调用该函数,我建议避免定义其他三个。

密码是:

    var input = new Array(-3, -1, 0, 0, 0, 4, 17, 29, 30);
    var zero = 0;
    var neg = 0;
    var pos = 0;

    function counter(input) {
        input.forEach(function(ele) {
            switch (true) {
                case (ele < 0):
                    neg++;
                    break;
                case (ele == 0):
                    zero++;
                    break;
                case (ele > 0):
                    pos++;
                    break;
            }
        });
    }

    counter(input);

    console.log(neg, zero, pos);

it is my understanding that document.write is part of node.js?

不,真的不是。 document object 是浏览器中 DOM 界面的一部分。

您可能想改用 console.log