User:Alexbfree/snippetForSearchingArray.js
Jump to navigation
Jump to search
Note: After saving, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
// copied from https://wiki.personaldata.io/wiki/MediaWiki:Access.js
// helper function for diving into a part of array
function indexInterpolate(obj,i) { return (obj[i] != undefined) ? obj[i] : obj};
// helper function for checking a part of an array exists
function indexCheck(obj,i) { return (obj[i] != undefined) ? obj[i] : undefined };
// dive selects matrix.a.b.c.d from the array called matrix and 'a.b.c.d' as string
// if a.b.c.d does not exists, it returns the substructure until the substructure exists, if d does not exist, it returns matrix.a.b.c e.g.
function dive(array, read){
return read.split('.').reduce(indexInterpolate, array);
}
function check(array, read){
return read.split('.').reduce(indexCheck, array);
}