繁体   English   中英

文字+ randomchar不起作用[JavaScript]

[英]Text + randomchar doesn't work [JavaScript]

<script>
function makeid()
{
var text = "var text = document.write(lastNumber);";
var possible = "*+-/";
for( var i=0; i < 1; i++ )
document.write(lastNumber + possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
document.write(makeid(1))</script>

我该如何键入以下内容:例如23 * 45-13 /等等。 怎么了? 它只显示2个数字,之后不显示任何字符。

代码存在一些问题:

  • 您尚未在函数中指定lastNumber参数。
  • 您正在返回使用该参数的代码,但是从代码执行位置无法访问该参数。
  • 返回的代码使用document.write的返回值,尽管它不返回任何内容。
  • 返回的代码没有脚本标签,因此将仅显示在页面上而不执行。
  • 您既要在函数中写入数字,又要返回用于编写它的代码。

也:

  • 您正在使用仅循环一次的循环,这毫无意义。

只要使函数返回字符串而不是返回代码即可:

<script type="text/javascript">
function makeid(lastNumber) {
  var possible = "*+-/";
  return lastNumber + possible.charAt(Math.floor(Math.random() * possible.length));
}
document.write(makeid(1));
</script>
<script>
function makeid()
{
var text = document.write(lastNumber);
var possible = "*-+/";
for( var i=0; i < 1; i++ )
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
document.write(makeid(1))</script>

那行得通,但是我得到“ 88undefined +”,什么是未定义的以及如何删除它?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM