code: function (o, readOnly, marker) {
              marker = marker || STAMP_MARKER;
              var guid = o[marker];
              if (guid) {
                  return guid;
              } else if (!readOnly) {
                  try {
                      guid = o[marker] = util.guid(marker);
                  } catch (e) {
                      guid = undef;
                  }
              }
              return guid;
          }
docs: stamp a object by guid
  @param {Object} o object needed to be stamped
  @param {Boolean} [readOnly] while set marker on o if marker does not exist
  @param {String} [marker] the marker will be set on Object
  @return {String} guid associated with this object
  @member KISSY