Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
by htsign 2016-10-09 [2016/10/09 02:11:46] httpやttpやtpなリンクのないURLにリンクを付ける(どこにでもあるやつだけど、標準技術のみで実装している自己満足ver) /* * @title リンク化 * @description httpやttpやtpなリンクのないURLにリンクを付ける(どこにでもあるやつだけど、標準技術のみで実装している自己満足ver) * @include http://* * @license MIT License */ // 【最近の変更】 // ・正規表現を更に少し変更 // ・httpsのURLに対応 // ・scriptタグの中身は変更しないようにした(誤爆しやすいみたいなので) // ・構造を大幅に変更 (function() { var ElementFactory = (function() { fu
JS NICEは難読化されたコードを読みやすく整形するツールです。ただ整形するだけでなく、ローカル変数の名前を変更する事も可能みたい。沢山のOSSから規則性を学習したプログラム解析技術を利用しており、適切な変数名を提案してくれる、との事です。まだあまり触っていないので何とも言えませんが・・・興味のある方は以下でお試しになってみては。 JS NICE
連載がはじまってからプレッシャーに弱い自分をみつけた. 原稿の締切が気になって余暇も落ち着かない. かといってさっさと原稿を書く身軽さもない. 結局なにもせずにぐずぐずと週末を過ごしてしまう. 仕方ないので週末のうち一日は物書きデーと決めてノート PC 持参で街にでかけ, コーヒー屋で原稿かき(か, その準備)をすることにした. "副業出勤" と命名. 私はワイヤレスな IP を持っていないので, 副業出勤は自動的に断線部となる. 今週はまだ二回目. 定着すると良いなあ... 副業出勤をしてみてわかったことが 3 つある. 1. お手洗いに行くのが面倒: 席を外れるときに荷物をもっていく必要がある. いつもならサイフだけ持っていくんだけど, 副業中はノート PC も手放せない. PC かかえてトイレにいくのは相当マヌケ. 同僚が必要だと思った. 世間のスタバ派自営業者はどうしてるんだろう.
Socket.IO 1.0がリリースアウトされました。Socket.IO v1.0が出るといわれてから一年半以上経過しましたが、やっと出ました。Node.jsに関わる方であれば一度はお世話になっていると思います。今回はSocket.IO 1.0の紹介を作者であるGuillermo Rauchがしているので、それを日本語で翻訳して紹介します。 TL;DR 翻訳していたらすごく面白かったのですが、文字だらけですごく長くなってしまったので、最初と最後にまとめを載せました。興味があれば全部目を通してみてください。 モジュール分割が進み、新しくEngine.IOが作られています。これはSocket.IOのトランスポート層のプロトコルを調律する役割を担っているライブラリです。 Engine.IOが行っている処理の一つで、最初に接続できる可能性が高いXHRやJSONPで確立し、websocketにupg
TypeScriptとは この連載の目的はTypeScriptの基本的なコードの書き方を初歩から学ぶことである。プログラミングの経験がない読者を対象としているので、パソコンの基本操作ができるぐらいの前提知識があれば読み進められるようにできるだけやさしく解説していくこととする。現在、TypeScript関連の資料にはJavaScriptの知識を前提として、JavaScriptとの差分を掲載しているものが多いが、ここではそういった前提を設定せずに1からTypeScript(とJavaScript)を学ぶこととする。 初回の恒例として、TypeScriptの概要がこの後に続くのだが、能書きはいいからとにかくやってみたいという方は、この先を飛ばして「いちばん簡単なTypeScriptのプログラム」に進んでもらって構わない。 さて、その「TypeScriptとは」なのだが、ひと言で表すなら「Java
site: http://develo.org/2014/04/29/1614.html サイトをpjaxを使って実装して思ったのですが、ページ移動がものすごくはやくて快適!今後サイト新しく作るときはpushStateとAjaxの組み合わせ検討してみてもよいかなぁって思いました! pushStateとは Ajaxなどで、非同期なサイトを作る際に、 アドレスが変更されない問題をjsで解消してくれる便利なやつです。 少し前の話だとFlashサイトを作るときに#(ハッシュ)をつけてurlを管理したりしていました。 pushStateを使うと普通にページ遷移しているようにアドレスを変更することができます! Ajaxとは ページを遷移せずに情報だけを非同期でとってきてサイトに描画する仕組みのことです。 pjax pushStateとAjax 2つを合わせてつくった仕組みのことです。 実際に作るにあた
JavaScriptの関数の基本事項 備忘&復習も兼ねて、JavaScriptの関数の基本的な使い方や特徴をまとめてみたいと思います。 (途中で確認のためのコードを挟んでいますが、出力結果は省略してあります) 1.リテラルを介して作成される リテラルの4つの構成要素 JavaScriptの関数は以下の4つの要素で構成されたリテラルによって作成される(関数宣言)。 予約語 function 関数名(省略可能) JavaScriptの識別子として有効な名前である必要がある 関数名をつけておくと、外部から呼び出すことができるだけでなく、内部で再帰的に自身を呼び出すことも可能になる 関数名が省略された場合は 無名関数 とよばれる () で囲まれたカンマ区切りの関数のパラメータのリスト リストは空でもよいが、()は必ずつける {} で囲まれた命令文 空でもよいが、{}は必ずつける
コンストラクター MutationObserver() DOM の変更が行われたときに指定されたコールバック関数を呼び出す新しい MutationObserver を生成して返します。 メソッド disconnect() MutationObserver のインスタンスが今後の通知を受け取ることを、 observe() が再び呼び出されるまで停止します。 observe() 指定したオプションに合う DOM の変更が発生したときに、コールバック関数を介して通知を受信し始めるように MutationObserver を構成します。 takeRecords() MutationObserver の通知キューから保留中の通知をすべて削除し、 MutationRecord の新しい配列 (Array) で返します。 Mutation Observer と resize イベントリスナーのカスタマイ
有給を駆使し一足早くクリスマス休暇に突入、ヒャッホイ Ingress やるぜーと 意気込んでいた矢先ノロウイルスにやられダウンした。かなしい。鎮まれ俺の胃袋・・・ そんな腹痛日和の気晴らしとして今日は Garbage Collection Advent Calendar に参加してみることにしました。 Advent Calendar 初体験につきよくわかってないけど勝手に参加していいんですよね? GC というとジェネレーショナルだのパラレルコンカレントだのといった話が目立ちがちだけれど、 現実の問題というかブラウザを相手にするとそれ以外の細々とした面倒が目につく。 GC つき言語 (JavaScript) のコードと C++ で書かれたコードとの連携は最たる面倒の1つ。 たとえば WebKit の DOM は C++ で実装されており、 C++ のオブジェクトは JavaScript 処理
身近なところで話題になったので。 過去にも、「empty() とか remove() するより、DOMオブジェクトにアクセスして innerHTML = ”” した方が速いよ!」というブログエントリを投下する方が多かったのですが、「必ずAPIを使う」こと。 理由は、「メモリリークの温床だから」 GitHub で manipulation.js のソース読めば判るとおり、結構頻繁に jQuery.cleanData() が実行されてます。― jQuery.cleanData() メソッドは、data() API として独自に実装された「各要素と紐づけられるキー・バリューストア(メモリストア)」に対する処理なので、innerHTML を使う場合でも、jQuery.cleanData() を使うなら、まぁ問題無いです。 要するに、jQuery (Zeptoみたいな類似ライブラリもそう)は、常にH
PhantomJSはすごく便利なのですが、ちょろっと使いたいだけのときにスクリプトファイルを用意するのは若干面倒です。対話モード(REPL)も用意されていますが、対話的に使うだけならChromeの方が使いやすい場面が多いです。 今回の想定シーンは、「GitHubでStarしてくれた人の一覧が欲しい」というようなケース。時々、Issueで全員に連絡したいことがありますよね。↓ こういうやつ。 @user1, @user2, @user3, ... GitHubだとJSONを返すAPIが用意されているので、それを使います。 コンソールを開く 新規タブを開いて、about:blankに移動します。まっさらな状態にするのがポイントです。 jQueryを仕込む PhantomJSを使う場合もそうですが、素のJavaScriptだと面倒が多いので、jQueryを仕込みます。次の2行を実行すればOK。
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
歴史認識 だいたい以下のような流れだと認識している。 IE8以前を含むECMAScript 3暗黒時代があった この時代をベースにベストプラクティスが構築 + HTML5ブームが発生した 暗黒時代なんで結構つらいし、IE9じゃないとECMAScript 5使えないし、結局辛い CoffeeScriptを筆頭としたaltJS一派に救いを求めた(結局Coffeeは一過性のカフェインだったわけだけど) 気がついたらECMAScript 6が来そうになっていた ES6でのsyntaxの拡張・標準ライブラリの増強はカッコいい 気がついたらES5当たり前、ES6も使えそうな世界が来そうになっていた(希望的観測が多分に含まれているのは暗黙の了解と化している) ES6、altJSの次のナウい世界として注目を集める だいたいこんな感じで、ECMAScript 5を用いたベストプラクティス的な物が存在しない、
本稿では,switch(true) イディオムの是非について論じて行きたいと思います.なお,話をややこしくしないために,本稿では JavaScript における switch(true) イディオムのみについて考察します.(当然ですが,言語によって switch のシンタックスおよびセマンティクスは大きく異なります.例えば ruby の case はいわゆる C-like な switch とは全く異なり,フォールスルーがない点や === 演算子による柔軟性がある点などにおいて同列に語れるものではありません.) 賛否両論の switch(true) switch(true) イディオムに関しては,様々な意見があります.記事の末尾に,各所から集めて来た意見をまとめておきますので参考にしてください.ここで私が述べたいことは,このイディオムに対しては とにかく賛否両論ある ということです. いっ
はじめに スタイルガイド自体は各々のルールでかなりの数が存在しますが、 下記のおすすめ4選を押さえておけば問題ないと思います。 おすすめ4選 Google JavaScript Style Guide Googleによる、最も代表的なスタイルガイドです。 時間のない方は、これだけにでも目を通しておく事をおすすめします。 JavaScriptのBad Partsについても述べられています。 英語:https://google.github.io/styleguide/javascriptguide.xml 日本語:http://www38.atwiki.jp/aias-jsstyleguide2/pages/1.html Closure Linterを使用することで、チームでの統一がしやすくなります。 グーグル製JavaScript文法チェッカー jQuery JavaScript Styl
Chrome拡張を作っていると,最近のモダンなWebサイトが後から動的にDOM要素を追加してきて困ることがある.毎度対処方法をぐぐっているので,ここにまとめておく. 追加される要素にイベントハンドラを付加したい jQueryのonメソッドにselectorを渡すことで,あとから動的に追加された子要素に対してもイベントを発火することができる. liveメソッドでも同様のことが出来たが,1.7で廃止された. 要素が追加されたことそのものを検出する DOMNodeInserted: 非推奨 要素が追加されたときに発火するDOMNodeInsertedというイベントが存在する.少し前に試した時はモダンなブラウザでは動いた. DOMに要素が挿入される度にイベントを起こすDOMNodeInsertedの扱い方 - 三等兵 にあるように,処理をブロックしないように非同期処理を行うべきだろう. 現在,DO
Many apps and sites build their own custom controls with HTML and JavaScript. These controls are not intrinsic like the ones provided by the input element. To work well with the rest of the web platform, these controls must be able to adapt to content changes, respond to events, and handle user interaction. Apps and sites need to monitor the DOM for mutations and respond accordingly. In Internet E
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く