Skip to content

Instantly share code, notes, and snippets.

@yaegaki
yaegaki / gist:6163814
Created August 6, 2013 11:46
Javascript Apply test
var Apply = function(){
Function.apply.apply(arguments[0], [arguments[1], arguments[2]]);
}
var func = function(){
console.log(this);
console.log(arguments);
}
Apply(func, window, [1,2,3]);
@yaegaki
yaegaki / OneLineFunc.js
Last active December 20, 2015 16:59
Javascript, String to Function
function toFunc(){
try{
var func = "temp=function(";
var args = this.match(/^\[(.+)\]/);
var body = this;
if(args){
func += args[1];
body = body.replace(/^\[(.+)\]/,"");
}
func += "){"+body+"}";
@yaegaki
yaegaki / c++11
Created August 21, 2013 00:28
c++11ってすげーわ Xcode5-DPで確認
#include <iostream>
#include <initializer_list>
class test{
public:
test(std::initializer_list<int> list){
for(auto it = list.begin();it != list.end();++it){
sum += *it;
}
}
@yaegaki
yaegaki / startThread.js
Created September 18, 2013 06:19
javascriptでworkerスレッドを関数から作成するサンプル. chromeでのみ動作確認.
function startThread(thread_callback, args, result_callback){
var script = new Blob(['onmessage = function(e){postMessage(('+thread_callback.toString()+').apply(null, e.data));}']);
var worker = new Worker(URL.createObjectURL(script));
worker.onmessage = function(e){
result_callback(e.data);
URL.revokeObjectURL(script);
}
worker.postMessage(args);
}
var uint8array = new Uint8Array(arrayBuffer); //arrayBufferにはデータが入っているとする
var value = (uint8array[0] << 8) + uint8array[1];
if(value & 0x8000){
value = -((value - 1) ^ 0xffff); //2の補数計算
}
alert(value); //valueに変換された値
@yaegaki
yaegaki / download.js
Created May 6, 2014 12:51
javascriptからファイル保存ダイアログを出す ref: http://qiita.com/yaegaki/items/914ced7595f86eb00afd
function download(url, name){
var a = document.createElement('a');
a.href = url;
a.setAttribute('download', name || 'noname');
a.dispatchEvent(new CustomEvent('click'));
}
@yaegaki
yaegaki / file0.css
Last active August 29, 2015 14:01
"CSSのみ"でdiv要素に画像を設定する ref: http://qiita.com/yaegaki/items/262f4e3717765cd1847d
.target{
width:/*ImageWidth*/;
height:/*ImageHeight*/;
background-image: url(Octcat.png);
}
@yaegaki
yaegaki / file0.html
Created May 9, 2014 10:52
AngularJSでngModelをinputに付けたときに日本語入力がリアルタイムで反映されない問題 ref: http://qiita.com/yaegaki/items/c9cf111ef9d0c541a194
<input ng-model="hoge" type="text">
<h1>{{hoge}}</h1>
@yaegaki
yaegaki / file0.js
Created May 19, 2014 11:07
HTML5でファイルをドロップする際に画面全体にオーバーレイを表示する方法 ref: http://qiita.com/yaegaki/items/b7ea40490b06bd4f8e4f
$('body').on('dragover', function(e){
e.stopPropagation();
e.preventDefault();
$('#overlay').fadeIn(300);
});
$('body').on('dragleave', function(e){
e.stopPropagation();
e.preventDefault();
$('#overlay').fadeOut(300);
<div ng-app="myApp">
<div ng-controller="testCtrl">
{{hoge}}
</div>
</div>