Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

クラスの定義 クラスの継承 即時関数 と jQuery.readyイベント関数 即時関数でクラス定義 private プロパティ Object.defineProperty/ies でプロパティ/メソッド定義 JavaScriptにはクラスが無い... 最新の ECMA Script 6 にはクラス定義が実装されましたが、まだ対応していないブラウザがほとんどです(2015年11月現在)。 そこで、関数オブジェクトをクラスに見立てて擬似的にクラスのようなものを実現します。 擬似的なクラスの書き方には様々な方法がありますが、ここで解説する手法は Google が推奨するもので、コンストラクタを持ち、インスタンス化することで動的なオブジェクトとして扱えます。 また静的なメンバーを持つことも可能です。 関数オブジェクト JavaScriptでは関数もオブジェクトとして扱われます。 コンストラクタと
何を言っているのか 製作時間 30分ぐらい 内容 input要素のtypeがtextまたはsearchの要素、もしくはテキストエリア内におけるキャレットの位置を画面内の絶対値として取得し、その周辺に打鍵と同時に画像を散らかしています。 キャレット位置の取得方法 これの実現については今回は自前実装ではなく caretposition.jsという素晴らしいライブラリがあったので、使わせていただいてます。 http://d.akiroom.com/2012-06/jquery-textarea-caret-position-javascript-library/ 実装 'use strict'; document.onkeydown = function (e) { var current = document.activeElement; if (e.key === 'Backspace')
はじめに いつもはes6のモジュール管理方式であるimport/export(ES modules)を使って、npmで手に入れたライブラリや自分で作成したモジュールをロードしているが、たまに思った挙動にならないことがある。また、export defaultしたモジュールをテストしようとしてkarmaでrequire()するとエラーになったりした。そういう場合は、とりあえずmodule.exportsを使ってみるとうまくいったりすることが多いのだが、なぜなのかはあまり考えていなかった。 ということで、実際にはどうなっているのか、またモジュールシステムとは何なのかという点で基本的なことから理解を深めて、es6のimport/exportとの違いを知り、より正しく実装できるようになれば良いと思っている。 結論としては 方針としては基本的にはES6形式で記述するが、CommonJS形式の読み書きが
Riot.jsは単純な仕様のため、複合したHTMLタグとJavaScript機能を持ち合わせた、いわゆるコンポーネントが非常に作りやすい。 今回実際作成したコンポーネントの解説を通して作りやすさを感じてもらい、Riotの普及活動に繋げたい。 #再利用しやすいコンポーネントとは これには諸説あると思うが、自分が思うに「利用したくない」と思われるコンポーネントは再利用されない。 自分が利用したくないコンポーネントは 使い方が複雑 依存関係が複雑 カスタマイズできない。もしくはしづらい 見た目がかっこわるい なので、これらの逆をつけば再利用しやすくなるのではと考える。 #作ったもの 手書き入力した内容を自動認識し、変換された文字列を返せるもの → <input type="text">の代替として利用可能なもの 仕様としては タッチもしくはマウス操作で手書きすると右下に認識した文字列を表示し、J
スゴイっぽい図((force layout))って何 こんな感じの、なんかビヨーンとなってシャキシャキして動くやつ。 説明するより動くものを見てもらった方が早いかも。 作ったdemo やってみた感想 グワングワン動いて楽しい 動的な描画をするのは難しそうだと思ってたが、そうでもなかった。 d3.js自体も難しいものだと避けてきたが、たくさんの人が記事にあげてくれているからググればなんとかなる。 実際に何かに使うには、描画したいデータを必要なフォーマットに直すところがちょっと大変そう。 解説 0. 全ソース 一旦全ソースを貼ってみる。 コピペしていくつかの値をいじってみるだけでも楽しい。 <!DOCTYPE html> <html> <head> <title>d3test</title> <script src="http://d3js.org/d3.v3.min.js" charset=
Chrome拡張の開発に必要な知識とかの覚書です。 この記事では開発の前に知っておくべきChrome拡張の全容について解説していきます。 「実際に開発しながら学ぶ」形式の解説記事は多く見られるのですが、概念についてちゃんとまとめてある記事は見当たらず、そこらへんの理解で結構苦労した覚えがあるので、そういった人達の手助けになればと思います。 対象 Chrome拡張が作りたい人 Javascriptがまあまあわかる人 Chrome拡張の各概念がいまいちわかってない人 概要 まずはChrome拡張の大まかな構造について説明します。 Chrome拡張はHTMLとCSSとJavascriptで作られています。 必要なhtml,css,jsファイルなどと後述のManifest Fileを一つのフォルダにまとめたものが一つの拡張機能のまとまりとなり、zipで圧縮してアップロードすることでストアで公開する
#概要 React+Redux+Express+MongoDBでCRUDアプリを作ります。 この記事の目的は、React/Reduxを触り始めた人が サーバーとの通信の方法(より一般的には非同期処理の方法) Reduxにおけるフォームの扱い ExpressによるAPI node.jsからのMongoDBの操作 Herokuへのデプロイ など、主にサーバー側のデータの操作に関わる基本的な事項を学ぶきっかけを作ることです。 この目的に集中するために、それ以外の点については一切気にしないことにします。 そのため、初心者以外の人(上記の内容を理解している人)がこの記事を読んでも得るものはないと思います。 この記事が書かれた背景には、少し前に自分自身がjavascriptによるフロントエンド開発からwebプログラミングを学び始めたころの経験があります。ReactやReduxの基本的な文法の理解を終え
JavaScriptのWebアプリケーションフレームワーク道 SEとしての1年目も終わりに差し掛かり、個人的にやってきたJavaScriptのWebアプリ作りで学んできたことを整理して、アウトプットするために記事にしました。あまりまとまっていませんが、ご容赦を。 今回はExpressについてです。 目標 JavaScriptのWebアプリケーションフレームワークの中で最もシンプルなのが"Express"。 Expressでメモ帳アプリを作成することを目標にします。 記事が長くなりそうだったので、基本編とDB接続編の2本を立てです。 この記事は、基本編として画面表示まで行います。 基本編とDB接続編をまとめた完成版コードはGitHubに置いてありますので、ご自由に御覧ください♪ → sasaken555/expMemo ##やること Webアプリケーションフレームワークの利用 ##やらないこ
$ cat package.json { ≈≈≈ "dependencies": { "express": "~4.13.1", "log4js": "^0.6.37", ≈≈≈ }, ≈≈≈ } $ mkdir modules $ cat modules/logger.js var log4js = require('log4js'); log4js.configure({ "appenders": [{ "category": "access", "type": "dateFile", "filename": "/var/log/nodejs/access.log", "pattern": "-yyyy-MM-dd", "backups": 3 }, { "category": "system", "type": "dateFile", "filename": "/var/log/no
はじめに PC <-> モバイルアプリ間のデータ通信にPublish/Subscribeメッセージモデルを利用しています。今はPubNubを使っていますが、スケールや価格を考慮してGoogle Cloud Pub/Subへの移行を検討しています。今回はGoogle Cloud Pub/Subをとりあえず使ってみた時のメモです。 やりたいこと PC Webのある画面でモバイルアプリからのデータを待ち受ける。(Subscribe) モバイルアプリからPC Webにデータ連携。(Publish) ※ 今回の内容は、1Publisherに対して、1Subscriberを想定しています。PC Webとモバイル間でTopic情報を連携する必要がありますがこの記事ではその部分は省略します。 Google Cloud Pub/Subの構成 Cloud Pub/Subの構成は以下のようになっていて、Publ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? まだまだドキュメントが少ないCocos2d-js(v3) 比較的長くて読めるチュートリアルをまとめてみました。(随時更新予定) マスト:公式の実装サンプル 性質上全てのサンプルコードのソースコードが見えるのでこれは穴場です http://cocos2d-x.org/js-tests/ chromeデベロッパーツールとかで見れば分かりますがjs-tests/src/以下には各々のjsファイルがあるのでソースコードをみてみましょう。 ChromeデベロッパーツールのSources検索では複数ファイルをまたがって検索できるのでレシピ集として使
はじめに googleサイト上で色々見た目をリッチ化したい、というミッションがあり、結構大変だったので 主に未来の自分に向けてメモを残しておきます。 全コード github GASのHTMLServiceを使っても色々できるようですが、Google Caja内での動作につき色々制限有。 あと、HTMLボックスでも行ける感じだったので試してみましたが、jQueryのバージョンが 特定以外だとダメだったり、やはりこちらも色々制限があります。 また、今回はどうしても従来のgoogle site内のコンテンツを拡張するというミッションだったため、 既存のgoogleサイト内にガジェットを配置する方法でjavascriptを走らせました。 できれば新しめの方法でいきたかったのですが、 時間が無い中で安全策を採択しました。 もっと簡単で良い方法があるはずです、だれか教えて下さい。 既存の方法おさらい
はじめに 軽量かつ学習コストも低めで書きやすいライブラリのRiot.jsですが、いわゆる落とし穴がいろいろあります。が、このライブラリに関する__日本語の__記事があまり多くなく、コード書いていると突然「あれっ!?」となることがたまにあるので、自分が知っているものを書いていきます。 ※執筆現時点でのバージョンは2.4.1です。 ※2016/11/10追記 既に3.0.0-alpha.13がリリースされた今、2.4.1なんて古いバージョンを使っている方はいないと思いますので、今の時点での2系の最新である2.6.7でも確認しました。 親タグマウント時に子タグもマウントされる タグ(.tagのこと)がネストしていると、親タグをマウントすると子タグも一緒にマウントされます。 例えば以下の様な場合、親タグ(appタグ)で何か処理する必要があって、その結果でマウントする子タグを決めたい場合、子タグ(c
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く