Created
March 23, 2011 11:09
-
-
Save assertchris/882947 to your computer and use it in GitHub Desktop.
JavaScript Object.combine method
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Object.combine = function (keys, values) { | |
if (!keys.length || !values.length || keys.length != values.length) { | |
return null; | |
} | |
var index = null, | |
length = keys.length, | |
results = {}; | |
for (index = 0; index < length; index++) { | |
results[keys[index]] = values[index]; | |
} | |
return results; | |
}; | |
var _classes = [ | |
'interface-renderer-time-excluded', | |
'interface-renderer-time-selected', | |
'interface-renderer-time-current', | |
'interface-renderer-date-previous-month', | |
'interface-renderer-date-next-month', | |
'interface-renderer-date-current', | |
'interface-form-cropper-element', | |
'interface-form-element-textbox-element', | |
'interface-form-element-textbox-focussed', | |
'interface-form-element-textbox-disabled', | |
'interface-form-element-textbox-clicked', | |
'interface-form-element-textarea-element', | |
'interface-form-element-textarea-focussed', | |
'interface-form-element-textarea-disabled', | |
'interface-form-element-textarea-clicked', | |
'interface-form-element-button-element', | |
'interface-form-element-button-focussed', | |
'interface-form-element-button-disabled', | |
'interface-form-element-button-clicked', | |
'interface-form-element-checkbox-element', | |
'interface-form-element-checkbox-focussed', | |
'interface-form-element-checkbox-disabled', | |
'interface-form-element-checkbox-clicked', | |
'interface-form-element-checkbox-checked', | |
'interface-form-element-radio-element', | |
'interface-form-element-radio-focussed', | |
'interface-form-element-radio-disabled', | |
'interface-form-element-radio-clicked', | |
'interface-form-element-radio-checked' | |
]; | |
Classes = Object.combine( | |
Array.from(_classes), | |
Array.from(_classes) | |
); | |
console.log(Classes); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It is very similar, except for a two small differences:
Currently there is no way to know if the results of values.associate(keys) returns a valid array according to these 2 conditions without further inspection - the method above can be compared to null to find this out. I also prefer this syntax over associate. :)