Using JSDOs to create mobile and web clients : JSDO overview : How JSDO memory works : Record IDs
  
Record IDs
One difference between the JavaScript record objects in JSDO memory and the table records that they represent on the server is that the JSDO creates each record object with a local record ID. This is an internal field reference with the OpenEdge-reserved name that uniquely identifies the record in JSDO memory. This record ID has no relationship to any values maintained to identify records on the server (such as the RECID and ROWID values maintained for the records of an OpenEdge database). Instead, this record ID is used by the JSDO progress.ui.UIHelper class to map the record objects in JSDO memory to HTML elements in mobile and web apps. The JSDO provides the getId( ) method for you to retrieve this record ID from any record object in JSDO memory and store it for future reference in order to efficiently retrieve that record object again from JSDO memory.
Note: The value assigned to the internal record ID for any given record object can change with each invocation of the fill( ) or saveChanges( ) method. For more information on these methods, see Methods of the JSDO and JSRecord classes.