Skip to content

Instantly share code, notes, and snippets.

@OmShiv
OmShiv / vm-array-functions-dump.js
Created December 28, 2013 08:28
Ran a "for ... in " on Array, VM8, Chrome 31.x
function (start,length){start=start||0;if(start<0)start=this.length+start;length=length||(this.length-start);var newArray=[];for(var i=0;i<length;i++)newArray[i]=this[start++];return newArray} VM2066:4
function (item){var i=0;var len=this.length;while(i<len){if(this[i]===item){this.splice(i,1);len--}else{i++}}return this} VM2066:4
function (item,from){return this.indexOf(item,from)!=-1} VM2066:4
function (keys){var obj={},length=Math.min(this.length,keys.length);for(var i=0;i<length;i++)obj[keys[i]]=this[i];return obj} VM2066:4
function (array){for(var i=0,j=array.length;i<j;i++)this.push(array[i]);return this} VM2066:4
function (array){for(var i=0,l=array.length;i<l;i++)this.include(array[i]);return this} VM2066:4
function include(object) {
if (Object.isFunction(this.indexOf))
if (this.indexOf(object) != -1) return true;
@OmShiv
OmShiv / components.component-five.js
Created June 9, 2018 20:24 — forked from neborn/components.component-five.js
Inheritance and Complex Types in Definitions
import ComponentOne from './component-one';
import ComponentA from '../mixins/component-a';
export default ComponentOne.extend(ComponentA, {
type: 'Component Five',
description: 'Extends Component One and includes Component A. Overrides obj in definition.',
obj: {
val: 5
}
});
@OmShiv
OmShiv / components.component-five.js
Created June 11, 2018 17:17
Ember Components and Mixins data leak fix
import ComponentOne from './component-one';
import ComponentA from '../mixins/component-a';
export default ComponentOne.extend(ComponentA, {
type: 'Component Five',
description: 'Extends Component One and includes Component A. Overrides obj in definition.',
obj: {
val: 5
}
});
@OmShiv
OmShiv / snow.html
Created December 24, 2012 07:05
Snow animation
<canvas id="canvas"></canvas>
import Ember from 'ember';
import { set } from '@ember/object';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
someObj: { a: 1 },
init() {
this._super(...arguments);
this.someProp = this.someObj;
},
import Controller from '@ember/controller';
import { action, computed, set, get, setProperties } from '@ember/object';
export default class ApplicationController extends Controller {
appName = 'Ember Twiddle';
init() {
super.init(...arguments);
this.set('model', {
endsAt: 'some value',
totalBudget: {