inspect(notation) {
        let level = this._source;
        let result = { has: false, value: undefined };
        let parent;
        Notation.eachNote(notation, (levelNotation, note) => {
            const lastNoteNormalized = utils.normalizeNote(note);
            if (utils.hasOwn(level, lastNoteNormalized)) {
                level = level[lastNoteNormalized];
                parent = level;
                result = {
                    notation,
                    has: true,
                    value: level,
                    lastNote: note,
                    lastNoteNormalized
                };
            } else {
                // level = undefined;
                result = {
                    notation,
                    has: false,
                    lastNote: note,
                    lastNoteNormalized
                };
                return false; // break out
            }
        });

        if (parent === undefined || (result.has && parent === result.value)) parent = this._source;
        result.parentIsArray = utils.isArray(parent);

        return result;
    }
/**
     *  Inspects the given notation on the source object by checking
     *  if the source object actually has the notated property;
     *  and getting its value if exists.
     *  @param {String} notation - The notation string to be inspected.
     *  @returns {InspectResult} - The result object.
     *
     *  @example
     *  Notation.create({ car: { year: 1970 } }).inspect("car.year");
     *  // { has: true, value: 1970, lastNote: 'year', lastNoteNormalized: 'year' }
     *  Notation.create({ car: { year: 1970 } }).inspect("car.color");
     *  // { has: false }
     *  Notation.create({ car: { color: undefined } }).inspect("car.color");
     *  // { has: true, value: undefined, lastNote: 'color', lastNoteNormalized: 'color' }
     *  Notation.create({ car: { brands: ['Ford', 'Dodge'] } }).inspect("car.brands[1]");
     *  // { has: true, value: 'Dodge', lastNote: '[1]', lastNoteNormalized: 1 }
     */
Inspects the given notation on the source object by checking
if the source object actually has the notated property;
and getting its value if exists.
@param {String} notation - The notation string to be inspected.
@returns {InspectResult} - The result object.


Inspects the given notation on the source object by checking if the source object actually has the notated property ; and getting its value if exists . @param { String } notation - The notation string to be inspected . @returns { InspectResult } - The result object .
inspect(notation) {
        let level = this._source;
        let result = { has: false, value: undefined };
        let parent;
        Notation.eachNote(notation, (levelNotation, note) => {
            const lastNoteNormalized = utils.normalizeNote(note);
            if (utils.hasOwn(level, lastNoteNormalized)) {
                level = level[lastNoteNormalized];
                parent = level;
                result = {
                    notation,
                    has: true,
                    value: level,
                    lastNote: note,
                    lastNoteNormalized
                };
            } else {
                result = {
                    notation,
                    has: false,
                    lastNote: note,
                    lastNoteNormalized
                };
                return false; 
            }
        });
        if (parent === undefined || (result.has && parent === result.value)) parent = this._source;
        result.parentIsArray = utils.isArray(parent);
        return result;
    }
inspect ( notation ) { let level = this . _source ; let result = { has : false , value : undefined } ; let parent ; Notation . eachNote ( notation , ( levelNotation , note ) => { const lastNoteNormalized = utils . normalizeNote ( note ) ; if ( utils . hasOwn ( level , lastNoteNormalized ) ) { level = level [ lastNoteNormalized ] ; parent = level ; result = { notation , has : true , value : level , lastNote : note , lastNoteNormalized } ; } else { result = { notation , has : false , lastNote : note , lastNoteNormalized } ; return false ; } } ) ; if ( parent === undefined || ( result . has && parent === result . value ) ) parent = this . _source ; result . parentIsArray = utils . isArray ( parent ) ; return result ; }
Inspects the given notation on the source object by checking
  if the source object actually has the notated property;
  and getting its value if exists.
Inspects the given notation on the source object by checking if the source object actually has the notated property ; and getting its value if exists .
// level = undefined; // break out