4 ms·
Nice work! I noticed that you're caching `this` as a variable: var Blur = this, And it looks like you're doing so to avoid scope problems in anonymous func
by morley 12y ago
Nice work!
I noticed that you're caching `this` as a variable:
var Blur = this,
And it looks like you're doing so to avoid scope problems in anonymous functions:
Blur.img.onload = function(){
stackBlurImage( Blur.img, Blur.canvas, blurRadius, Blur.width, Blur.height)
};
I personally don't like this style. It makes it harder to read the code. If someone misses that `var Blur = this` line, they could get confused and either not use it, or use it incorrectly.
Instead, since you're using ES6, I suggest using the fat arrow:
this.img.onload = () => {
stackBlurImage(this.img, this.canvas, blurRadius, this.width, this.height);
};
(I'm used to writing Coffeescript instead of ES6, so sorry if minor syntax details are wrong.)
This is largely a stylistic choice. You can feel free to do things however you want, and if it works, it works. But generally I prefer to make sure things are really clear, and that the Javascript features aren't obscured.
- simplify 12y ago> It makes it harder to read the code I think it makes it much easier to read the code. Assigning it to a variable gives a nice, short description of what you're actually working with.
- lfuller 12y agoBy using arrow functions it's simply implied that the top level context is always being used. You don't have to define what "this" is, since it's always "this".