我意识到这可能是一个基本问题,但我踩了一脚。我有一个变量,正在做一些数学从1到6中随机选择一个数字。我想取该变量的值并将其附加到DOM但是它返回' undefined'当我将其记录到控制台时。如何访问当前保存到变量' randomNumber'的数字的值。并将其附加到DOM?理想情况下,我想创建一个函数,每次调用它都会生成随机数并将其附加到#instructions。我假设我必须通过在函数dice1()中放入randomNumber来做到这一点,但是我是将它设为全局还是将其放在函数中,它返回undefined。
function dice1(){
var randomNumber = Math.floor(Math.random() * 6) + 1;
$('#instructions').append(randomNumber);
}
dice1();
console.log(dice1());
答案 0 :(得分:0)
您需要在randomNumber
函数中返回dice1()
。
试试这个:
function dice1() {
var randomNumber = Math.floor(Math.random() * 6) + 1;
$('#instructions').append(randomNumber);
return randomNumber;
}
<强> JSFiddle Demo 强>
答案 1 :(得分:0)
该函数没有return语句,因此返回 undefined 。如果你想返回 randomNumber ,那就这样做:
$('#instructions').text(randomNumber);
此外,materialized view不是您所追求的方法,请尝试.append():
FileReader
似乎真正的问题是在元素存在之前调用 dice1 。在这种情况下,当尝试写入元素的内容时,普通的javascript会抛出错误。 jQuery隐藏了这样的错误。
即使在元素存在之后调用该函数,它也会继续返回 undefined ,直到添加一个返回其他值的return语句。
答案 2 :(得分:0)
您只需返回值
即可T
}
答案 3 :(得分:0)
确保包含jquery.js文件,因为.append()是jquery方法之一。试试这样的事情,
<script type='text/javascript' src='https://code.jquery.com/jquery-1.9.1.js'></script>
<{3}} 中的演示
如果要打印随机数,则必须在dice1()中返回randomNumber。
JS
function dice1(){
var randomNumber = Math.floor(Math.random() * 6) + 1;
$('#instructions').append(randomNumber);
return randomNumber;
}
dice1();
console.log(dice1());
alert(dice1());
HTML
<div id='instructions'>hello</div>