1

我是初学者 javascript 开发人员,我编写了以下代码:

var foo = "sunny";
var longitudInt = foo.length;
console.log("The length of " + foo + " is " + longitudInt);

但是我写foo.length的时候,拼写错误,写了foo.lenght,但是在控制台没有显示错误,为什么? 它不显示错误

4

2 回答 2

0

foo.lenght不会引发错误,但会返回undefined。原因是它foo是一个String类型变量,当它尝试调用该属性lenght(这是无效的)时,它不会在其原型中得到它。因此,它返回undefined而不是错误。

var foo = 'str';
console.log(foo.lenght);

但是,如果您尝试访问其他属性foo.lenghtfoo.lenght.len那么这会给您带来错误,因为此时foo.lenghtundefined会尝试读取一个undefined类型的属性。

var foo = 'str';
console.log(foo.lenght.len);

于 2018-06-29T06:17:35.143 回答
0

“something”.lenght(或任何真正的东西,“something”.foobar)的值将是“ undefined ”(大致相当于 null)。

它不会像其他一些语言那样抛出异常

于 2018-06-29T06:13:06.830 回答