<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 +”什么是undefinded以及如何删除呢?