Skip to content

Instantly share code, notes, and snippets.

@koyta
Created May 25, 2017 10:49
Show Gist options
  • Save koyta/5b41b30e111b4becdea5b13471e411f3 to your computer and use it in GitHub Desktop.
Save koyta/5b41b30e111b4becdea5b13471e411f3 to your computer and use it in GitHub Desktop.
20.md
const key = 'mobile phone';
const bob = {
	name: 'Bob',
	[key]: '1234567890',
	[Symbol.iterator]: () => null,
};
bob[key] = '1234567890';

for ( const key in bob )
{
	console.log( key, bob[key] );
}

Написать функцию преобразования строки вида 'Числа: 3, 4, 5; Цвета: красный, синий, зелёный; Разное: 42, табуретка' в объект:

{
	'Числа': [3, 4, 5],
	'Цвета': ['красный', 'синий', 'зелёный'],
	'Разное': [42, 'табуретка']
}
'Числа: 3, 4, 5; Цвета: красный, синий, зелёный; Разное: 42, табуретка'
	.split( /\s*;\s*/ )
	.map(
		( item ) => item.split( /\s*:\s*/ )
	)
	.reduce(
		( obj, value ) =>
		{
			obj[ value[0] ] = value[1].split( /\s*,\s*/ )
				.map(
					( item ) =>
					{
						const num = Number( item );
						
						return (
							isNaN( num )
							? item
							: num
						);
					}
				);
			
			return obj;
		},
		{}
	)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment