6

为了简单的调试目的,有没有办法让 screeps 代码将字符串打印到控制台(或任何地方)?

4

4 回答 4

10

您可以为此使用标准console.log方法。

于 2014-11-21T21:04:59.860 回答
4

我使用以下内容将对象打印到控制台:

console.log(JSON.stringify(<myVariable>))

于 2015-08-14T14:02:38.440 回答
3

我在 Docs 中找不到如何执行此操作。不得不写这样的东西:

module.exports = function () {
   var log = Memory.log;
   if(log === null || log === undefined){
       log = Memory.log = [];
   }

   var parts = ["["+Game.time+"]"];
   for(var i in arguments){
       parts.push(arguments[i]);
   }
   var msg = parts.join(" ");
   log.push(msg);
   if(log.length > 10){
       log.shift();
   }
}

如果有人可以提供更好的解决方案,将不胜感激。

于 2014-11-21T21:01:44.847 回答
1

有时,当您执行 console.log 时,您会得到无用的对象字符串表示形式,例如“[Object]”。

如果您想深入了解对象并检查它的属性,最简单的解决方案是打开浏览器的控制台。开发人员做到了,因此脚本中的任何 console.log 也将到达标准浏览器控制台。我相信它适用于所有主要浏览器。

于 2016-05-05T06:39:51.413 回答