Loop optimization and cleanup
Reduced the complexity of search loops And some cleanup. Change-Id: I772b02abd14d50ad1965e933d8dbb6d3eb4e0b1d
This commit is contained in:
committed by
Amir E. Aharoni
parent
05eb91bee3
commit
af3f6ac58d
@@ -35,7 +35,7 @@
|
||||
* @return array of strings
|
||||
*/
|
||||
$.uls.data.regions = function( language ) {
|
||||
return $.uls.data.languages[language][1];
|
||||
return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN';
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -169,6 +169,27 @@
|
||||
return $.uls.data.languagesByScriptGroupInRegions( $.uls.data.allRegions() );
|
||||
};
|
||||
|
||||
/**
|
||||
* Get the given list of languages sorted by script.
|
||||
* @param languages Array of language codes
|
||||
* @return {Object} Array of languages indexed by script codes
|
||||
*/
|
||||
$.uls.data.languagesByScriptGroup = function( languages ) {
|
||||
var languagesByScriptGroup = {}, scriptGroup, language, langScriptGroup;
|
||||
for ( scriptGroup in $.uls.data.scriptgroups ) {
|
||||
for ( language in languages ) {
|
||||
langScriptGroup = $.uls.data.scriptGroupOfLanguage( language );
|
||||
if( langScriptGroup !== scriptGroup ){
|
||||
continue;
|
||||
}
|
||||
if ( !languagesByScriptGroup[scriptGroup] ) {
|
||||
languagesByScriptGroup[scriptGroup] = [];
|
||||
}
|
||||
languagesByScriptGroup[scriptGroup].push( language );
|
||||
}
|
||||
}
|
||||
return languagesByScriptGroup;
|
||||
};
|
||||
/**
|
||||
* Returns an associative array of languages in several regions,
|
||||
* grouped by script group.
|
||||
|
||||
Reference in New Issue
Block a user