Issue #199 (Invoke a Function, React Tools, Frameworks, Media)05/11/17
How many ways are there to invoke a function in JavaScript? Well, according to this Gist by Alexander Myshov, there are at least 11. I've reproduced his list below with some white space formatting so the lines aren't too long:
console.log(1);
(_ => console.log(2))();
eval('console.log(3);');
console.log.call(null, 4);
console.log.apply(null, [5]);
new Function('console.log(6)')();
Reflect.apply(console.log, null, [7]);
Reflect.construct(function() {
console.log(8)
}, []);
Function.prototype.apply.call(
console.log, null, [9]
);
Function.prototype.call.call(
console.log, null, 10
);
new (require('vm').Script)(
'console.log(11)'
).runInThisContext();
|
Most of those probably aren't all that useful and at least one of them is considered bad practice (eval).
So if you're intrigued by technical examinations like that one, it might be a good exercise to try to figure out how each one of those examples works, maybe doing a little Googling or searching on MDN to look up some of the more mysterious examples.
Now on to this week's tools!
|
React Tools
React Native Ratings
An extendable Rating's components for React Native with gestures and an intuitive API.
react-infinite-scroll-component
A 4.25kb infinite-scroll component that actually works and is super-simple to integrate.
react-frontload
Bind async data dependencies to React components.
react-redux-reformed
Forms with React and Redux made simple: start with the bare minimum, no magic, then use composition (components, functions, global and local states) to create more complex forms.
Input Autocomplete
Tiny react input component with HTML5-like autocomplete.
react-accessible-accordion
Accessible accordion component for React.
Conductor
Orchestrate animations across components in one place. A way to organize your code to make the Animated API easier to work with.
react-ionize
A library that lets you build the "non-browser" parts of an Electron app using React components to manage your application's state.
|
Front-end Frameworks
Mineral UI
A design system and React component library for the web. Still in early development.
RAGrid
Intrinsic first flexbox grid.
ReactXP
A library for building cross-platform apps, built on React and React Native.
Office UI Fabric React
The React-based front-end framework for building experiences for Office and Office 365.
Building Blocks
A library of Foundation UI components. These HTML, CSS and JS snippets can be plugged into any Zurb Foundation project to build faster.
marko
Now at version 4.x. A friendly (and fast!) UI library that makes building web apps fun.
Boundless
A fast, customizable and accessible UI toolkit that was conceived to abstract away difficult interface patterns.
Reactive Maps
A real-time components library for building reactive UIs.
|
Multimedia Tools
Layersnap
Build SVG transitions simply and declaratively.
Vize.it
Custom image recognition API. Build your apps with custom visual Artificial Intelligence.
SVGito
Web app for optimizing SVG graphics. Optimizations include cleaning up Sketch’s inside/outside border markup, replacing use elements, and removing useless fill rules.
zuck.js
A JavaScript library that lets you add social media "stories" everywhere. Read stories from any endpoint (JSON, Firebase, etc.) and the script will do the rest.
Britecharts
A client-side reusable charting library based on D3.js that allows easy and intuitive use of charts and components.
Shape Shifter
A web app that simplifies the process of creating SVG-based path morphing animations.
|
A Tweet for Thought
Advice from Cory House on how a self-taught programmer can find a decent job as a developer.
Suggestions / Corrections
Made something? Send links via Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
Before I Go...
Contributor-ninja is a way to "help open-source projects one issue at a time."
Thanks to all for subscribing and reading!
Keep tooling,
Louis
webtoolsweekly.com
@LouisLazaris
|
|