0

我想问一下knockout.js源代码中声明的目的。谢谢你。

ko.observable = function (initialValue) {
    var _latestValue = initialValue;

    function observable(newValue) {
        return _latestValue;
    }
    observable.__ko_proto__ = ko.observable;   **// <-- what's the purpose of this line??**

    ko.subscribable.call(observable);
    return observable;
}
4

2 回答 2

2

我看到它有帮助的一件事是测试可观察的属性。如在此处找到 确定对象属性是否为 ko.observable

于 2013-09-10T18:08:54.703 回答
1

__ko_proto__属性是 Knockout 如何知道某事是可观察的。大多数绑定可以接受可观察值或普通值,并用于ko.unwrap获取实际值。ko.unwrapuses ko.isObservable,它检查__ko_proto__属性。

于 2013-09-11T20:20:35.017 回答