register knockout define knockout.js

knockout.js - knockout - Diferencia entre unwrapObservable y()



knockout js lifecycle (1)

La diferencia es que ko.utils.unwrapObservable es seguro. Debe usarlo cuando no sepa si el parámetro es observable o no. Por ejemplo:

function GetValue(x){ return ko.utils.unwrapObservable(x); } function GetValueEx(x){ return x(); } var test = 5; var y = GetValue(test) // Work fine, y = 5; y = GetValueEx(test) // Error!

Entonces, si usted sabe exactamente que su parámetro es observable, puede usar () contrario, use unwrapObservable .

EDITAR: se ha agregado una versión más corta de unwrapObservable en knockout 2.3 - ko.unwrap

¿Hay una diferencia real entre:

y = ko.observable("value"); x = ko.utils.unwrapObservable(y);

y:

y = ko.observable("value"); x = y();

¿Debería preferir uno de los anteriores y por qué?