Javascript Can';t文件。在提示框上写下编号

Javascript Can';t文件。在提示框上写下编号,javascript,methods,Javascript,Methods,我想记录。用两个小数点在提示框上写下某人写的数字。但控制台显示“document.write可以是eval的一种形式”,并且它不会出现在html页面上,即使我得到了输入数字的提示 function roundNumber () { let myNumber = prompt('Please insert a decimal number.'); return myNumber.toFixed(2); } document.write(roundNumber()); 希望有人能提前提

我想记录。用两个小数点在提示框上写下某人写的数字。但控制台显示“document.write可以是eval的一种形式”,并且它不会出现在html页面上,即使我得到了输入数字的提示

function roundNumber () {
let myNumber = prompt('Please insert a decimal number.');     
return myNumber.toFixed(2);
}
document.write(roundNumber()); 

希望有人能提前提供帮助并表示感谢。

当我运行您的代码时,我发现错误:

myNumber.toFixed不是一个函数

这是预期的,因为提示符的结果是字符串而不是数字,所以它没有
toFixed()
函数。基本上,问题是您的函数有错误并且没有成功运行

如果删除
toFixed()
,则它可以正常工作:

function roundNumber () {
    let myNumber = prompt('Please insert a decimal number.');     
    return myNumber;
}
document.write(roundNumber()); 


如果要使用十进制数,则应首先使用
parseFloat
对其进行解析。大概是这样的:

function roundNumber() {
    let myNumber = prompt('Please insert a decimal number.');
    return parseFloat(myNumber).toFixed(2);
}
document.write(roundNumber());

当我运行您的代码时,我得到错误:

myNumber.toFixed不是一个函数

这是预期的,因为提示符的结果是字符串而不是数字,所以它没有
toFixed()
函数。基本上,问题是您的函数有错误并且没有成功运行

如果删除
toFixed()
,则它可以正常工作:

function roundNumber () {
    let myNumber = prompt('Please insert a decimal number.');     
    return myNumber;
}
document.write(roundNumber()); 


如果要使用十进制数,则应首先使用
parseFloat
对其进行解析。大概是这样的:

function roundNumber() {
    let myNumber = prompt('Please insert a decimal number.');
    return parseFloat(myNumber).toFixed(2);
}
document.write(roundNumber());

当您使用
document.write()
时,您正在编写的内容将被解析为HTML。如果它包含Javascript,则将执行它。document.write是1990年代的Javascript,学习使用现代编码风格。@Barmar什么是“现代”document.write()等价物?
document.getElementById()
然后设置其
textContent
innerHTML
属性。您确定没有收到错误消息说
myNumber.toFixed
不是函数吗?@Barmar使用
document.write()
而不是
document.getElementById()
有什么问题吗?我已经使用了这两种方法,并且我发现后者对于快速测试我的代码来说很不方便,因为我必须创建一个标记并给它一个id。当您使用
document.write()
时,您所写的内容将被解析为HTML。如果它包含Javascript,则将执行它。document.write是1990年代的Javascript,学习使用现代编码风格。@Barmar什么是“现代”document.write()等价物?
document.getElementById()
然后设置其
textContent
innerHTML
属性。您确定没有收到错误消息说
myNumber.toFixed
不是函数吗?@Barmar使用
document.write()
而不是
document.getElementById()
有什么问题吗?我两者都用过,我发现后者不方便快速测试我的代码,因为我必须创建一个标记并给它一个id。这与他收到的关于
document.write()
eval()
的一种形式的警告有什么关系?@Barmar:没有,但是代码有一个错误,我修复了这个错误。只需假设问题中的错误来自与此问题无关的其他方面。你必须问OP他是从哪里得到这个错误的,我只是在修复提供的代码这与他得到的关于
document的警告有什么关系。write()
eval()
的一种形式?@Barmar:没有,但是代码有一个错误,我修复了这个错误。只需假设问题中的错误来自与此问题无关的其他方面。你必须问OP他是从哪里得到这个错误的,我只是在修复提供的代码