2017年4月9日日曜日

開発環境

Head First Python (Paul Barry (著)、O'Reilly Media)のChapter 10.(Function Decorators: Wrapping Functions) の SHARPEN YOUR PENCIL(No. 7477) を JavaScript で取り組んでみる。

Relational Database は MySQL、MariaDBの代わりに IndexedDB(とDexie.js、JavaScript library) を使用。(大雑把なイメージだけ。)

SHARPEN YOUR PENCIL(No. 6522)

コード(Emacs)

HTML5

<button id="run0">run</button>
<button id="clear0">clear</button>
<pre id="output0"></pre>

<script src="sample3.js"></script>

JavaScript

let btn0 = document.querySelector('#run0'),
    btn1 = document.querySelector('#clear0'),
    pre0 = document.querySelector('#output0');

let checkLoggedIn = (fn) => {
    return () => {
        pre0.textContent += 'checkLoggedIn\n';
        fn();
        pre0.textContent += 'checkLoggedIn END\n';
    };
};

let test = checkLoggedIn(
    () => {
        pre0.textContent += 'test\n';
    }
);

let output = () => {
    test();
};

btn0.onclick = output;
btn1.onclick = () => {
    pre0.textContent = '';
};

output();












						

0 コメント:

コメントを投稿