src/libs/bobject.js
function (key) {
        var next = false
        if (~key.indexOf('.')) {
            var tokens = key.split('.');
            key = tokens.shift();
            next = tokens.join('.');
        }


        var accessor = getAccessors(this)[key],
            val;
        if (accessor) {
            val = accessor.target.get(accessor.key);
        } else {
            // Call getting function
            if (this['get_' + key]) {
                val = this['get_' + key]();
            } else {
                val = this[key];
            }
        }

        if (next) {
            return val.get(next);
        } else {
            return val;
        }
    }
function (key) {
        var next = false
        if (~key.indexOf('.')) {
            var tokens = key.split('.');
            key = tokens.shift();
            next = tokens.join('.');
        }


        var accessor = getAccessors(this)[key],
            val;
        if (accessor) {
            val = accessor.target.get(accessor.key);
        } else {
            // Call getting function
            if (this['get_' + key]) {
                val = this['get_' + key]();
            } else {
                val = this[key];
            }
        }

        if (next) {
            return val.get(next);
        } else {
            return val;
        }
    }
function ( key ) { var next = false if ( ~ key . indexOf ( '.' ) ) { var tokens = key . split ( '.' ) ; key = tokens . shift ( ) ; next = tokens . join ( '.' ) ; } var accessor = getAccessors ( this ) [ key ] , val ; if ( accessor ) { val = accessor . target . get ( accessor . key ) ; } else { // Call getting function if ( this [ 'get_' + key ] ) { val = this [ 'get_' + key ] ( ) ; } else { val = this [ key ] ; } } if ( next ) { return val . get ( next ) ; } else { return val ; } }
Get a property from the object. Always use this instead of trying to
access the property directly. This will ensure all bindings, setters and
getters work correctly.

@param {String} key Name of property to get or dot (.) separated path to a property
@returns {*} Value of the property
Get a property from the object . Always use this instead of trying to access the property directly . This will ensure all bindings setters and getters work correctly .