今天我几乎要挽救我所有的头发,这是一个愚蠢的错误。问题是我不确定这是否是预期的行为。
按照我在C#上的习惯,我编写了以下javascript代码,并试图了解发生了什么问题,因为它没有返回任何内容,甚至没有向控制台写入任何错误:
this.fullName = ko.computed(function () {
return
this.firstName() + " " + this.lastName();
}, this);
然后(半小时后),我更改了下面的代码a,它可以正常工作:
this.fullName = ko.computed(function () {
return this.firstName() + " " + this.lastName();
}, this);
这是预期的行为吗?
最佳答案
是。这是隐式分号。
这是类似的情况,并带有解释:http://premii.com/lab/js_implicit_semicolon_and_return.php
简而言之:您的第一个代码段被解释为:
this.fullName = ko.computed(function () {
return;
this.firstName() + " " + this.lastName();
}, this);