function orangeCost(oneOrange){
//this.OneOrange = oneOrange;
var total = OneOrange * OneOrange;
console.log(total);
}
orangeCost(5);
我期待5是通过在参数,它可以像变量使用的功能中,不能正常工作,直到我用this
关键字(2号线),为什么呢?为什么我的功能PARAMS说是未定义
function orangeCost(oneOrange){
//this.OneOrange = oneOrange;
var total = OneOrange * OneOrange;
console.log(total);
}
orangeCost(5);
我期待5是通过在参数,它可以像变量使用的功能中,不能正常工作,直到我用this
关键字(2号线),为什么呢?为什么我的功能PARAMS说是未定义
如果你还没有做任何复制粘贴错别字,你有一个橙色参数,持有5和OneOrange局部变量,这是未定义的。
Javascript区分大小写。
o
小的位置 - >function orangeCost(oneOrange){
变化
var total = OneOrange * OneOrange;
到
var total = oneOrange * oneOrange;
OR
变化
function orangeCost(oneOrange){
到
function orangeCost(OneOrange){
在JavaScript everytihng是,这意味着变量,函数名和运营商都是区分大小写区分大小写。
因此,变量oneOrange
不同于OneOrange
。这就是你得到关于未定义变量的信息的原因。并且你的函数输入参数被定义,但变量'OneOrange'不是。
你必须行
var total = OneOrange * OneOrange;
改变
var total = oneOrange * oneOrange;
而且最好不要,因为它们用于构造约定使用变量,如OneOrange
。
“OneOrange”与“oneOrange”不同(注意第一个字符)。它使用'this.OneOrange = oneOrange;'的原因是这个语句创建了一个全局变量'OneOrange',其值为'oneOrange'。 –
这个问题似乎是无关紧要的,因为它是关于打字错误,这对其他人来说不会有太大用处。 –
请不要投下来,我的坏LULZZZ – user3057928