1

我正在尝试遍历一个数组,并为该数组中的每个对象打印一个计数器编号。我从以下逻辑开始:

{for (let i = 0; i < 10; i++){
   print(i)}
}

在 Observable Notebooks (observablehq) 中,这将返回“未定义”。所以,我没有得到任何打印声明。我希望将这个逻辑传递给数组中的对象循环,并对每个对象进行计数。但是,我只是尝试使用计数器!

我也试过这个:

import {log} from '@sorig/console-log-without-leaving-your-notebook'

{for (let i = 0; i < 10; i++){
   console.log(i)}
}

这也返回“未定义”。

4

1 回答 1

1

console.log在 Observable 中工作正常。我不确定是否是拼写错误,但print(i)不是 javascript 方法,您的意思是console.log?如果您尝试以下代码段并打开开发人员工具,您将看到打印的行。

unamedcell = {
  for (let i = 0; i < 10; i++){
    console.log(i);
  }
}

但是,请记住,在 Observable 中,您有不同风格的 javascript。

Observable 不是 JavaScript

它返回 undefined 因为您没有命名单元格。

如果我了解您的需求,请在那里循环遍历一组对象。首先用你的数据命名一个单元格,你也可以从其他地方获取。然后另一个使用该数据的单元格这是一个虚构的案例:

data = {
  // your data
  const myObjects = [
    { a: 10, b: 20 },
    { a: 1, b: 2 },
    { a: 1, b: 5 },
    { a: 2, b: 10 }
  ];
  return myObjects;
}
// data = Array(4) [Object, Object, Object, Object]

然后另一个单元格

dataExample = {
  let asum = 0;
  let bsum = 0;
  for (let i = 0; i < data.length; i++) {
    asum += data[i].a;
    bsum += data[i].b;
  }
  return { asum, bsum };
}
// dataExample = Object {asum: 14, bsum: 37}

有关其用户手册的更多信息

于 2020-05-28T04:58:58.273 回答