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

ここらへん斜め読みしてるとかなーーーり混乱してきて時代に置いていかれてたので、自分用にいくつかの記事まとめをしてみました。先日「頃合いの良い」出来事もありましたので。 ES6 とか ES2015 ってなんやねん、同じちゃうの 昨年サイボウズの中の人が書かれた記事が分かりやすいです。 blog.cybozu.io 要約すると、 「ES2015」が正式名称だぞ 仕様策定途中からそうなったもんだから「ES6」という呼び方も浸透しちゃったぞ いわゆる「ES7」にあたるものは「ES2016」と呼ぶぞ 今後「ES7」っていうとマサカリが飛んでくるので気をつけましょう。 ブラウザの対応状況は ここで確認できます。 compatibility table http://kangax.github.io/compat-table/es6/ それぞれ 「ES5」、「ES6」、そして next という区分けがな
解除できるラジオボタンを設置したいときもあります。 解除ボタンを追加して押させるのもスマートじゃないので、チェック済のラジオボタンを押したら選択解除できるようにしてみます。 ネットで情報を探すと苦戦している人も多いけど、チェックされてる値を記憶しておいて、同じラジオボタンが押されたら解除するだけ、意外と簡単です。 JQueryで書いてみましたが、別に素のJavaScriptでも簡単だと思います。 選択肢1 選択肢2 選択肢3 <script> $(function(){ var nowchecked = $('input[name=xxxx]:checked').val(); $('input[name=xxxx]').click(function(){ if($(this).val() == nowchecked) { $(this).prop('checked', false); no
ECMAScript 2016に新規追加される機能が50回目のEcma TC39ミーティングで確定しました。 On March 1st I will be snapshotting the ECMA262 draft to start its journey toward becoming the official ECMAScript 2016 standard! — Brian Terlson (@bterlson) January 27, 2016 Array.prototype.includes ES6でArray.prototype.containsとして追加される予定でしたが、Break the webであったため延期されていた機能です。 Having a non-enumerable Array.prototype.contains may not be web-compat
僕は基本的にChromeアプリやChrome拡張機能を作っていることが多いので、Chromeがサポートしている範囲内でコードを書くことが多い。Chromeは他のブラウザに比べて最新技術の取り込みが迅速に行われている印象が強い。ECMAScript 2015についても、たぶん他のブラウザよりもサポート範囲が広いはず。 というわけで、ECMAScript 2015(ES6とも言う)でコードを書くことが多くなった。特に気に入っているのは、Arrow Functionsとclass。どちらも非常に強力で、ES5までの「なんでこんなコード書かなあかんねん」と思ってたことがいくつかなくなって、コーディングがまた楽しくなった。 Arrow Functions 単純に「関数作りたいだけで”function”って8文字も打つの面倒だよね」ってJavaScriptをDISってた人はかなり多かったはず。これが、
JavaScriptでURLパラメータを取得する方法についてGoogleで調べると、location.hrefやlocation.searchをsplitで「&」で区切った後にさらに「=」で区切るような処理をしていたり、jQueryのjQuery-URL-Parser(jquery.url.js)プラグインが紹介されていたりするのですが、URLパラメータをちょろっと取り出したいだけ、にしては大がかりなので、もっとあっさり書ける方法を紹介しておきます。 目次 1. よく見つかるコード1.1. JavaScriptのsplitでパラメータを取得する1.2. jQueryプラグインを使う2. 本題:JavaScriptで、URLを取得するパラメータを取得する3. 説明3.1. location.hrefではなくlocation.searchを使う3.2. 正規表現でURLパラメータを見つける3.
これはクローラー/Webスクレイピング Advent Calendar 2015の9日目の記事です。 本記事では、Scrapinghub社*1が開発しているSplashというオープンソースソフトウェアを紹介します。 github.com JavaScriptを使ったページからスクレイピングする方法としては、PhantomJSとSelenium/CasperJSなどの組み合わせが一般的ですが、これらとは少し違う手段として使えるかもしれないソフトウェアです。 私自身Splashを最近知ったばかりで、軽く探した限りでは日本語の情報もないので、調査しつつSplashの使いドコロを探ってみたいと思います。 Splashとは READMEには以下のように書かれています。 Splash is a javascript rendering service with an HTTP API. It's a
メモがわり。 baseとなるURLを指定して相対URLを絶対URLに変換するには、ChromeやFireofxではURLUtilsを用いて以下のように書くことで簡単に実現できる。 var absolute = (new URL( "foo", "http://example.jp/bar/baz" ) ).href; // http://example.jp/bar/foo IEではURLコンストラクタはサポートされていないが、IE9以上ではDOMParserやcreateHTMLDocumentを使って現在のDOMとは分離したdocumentを生成し、その中に<base>要素を用いてbase URLを指定し、そのdocument内で<a>要素を用いて相対URLを絶対URLに変換するという手段によって相対URLを絶対URLに変換可能である。 function getAbsoluteUrl(
おきまりのやつ CYBIRDエンジニア Advent Calendar 2015 2日目担当の @keitarou です。 イケメンスタジオという謎の組織でWEBエンジニアをしております。 最近はNode.jsを使った大規模分散アプリケーションみたいなものを作ってます。 今回のCYBIRDエンジニア Advent Calendarの仕切り役みたいなのもやっています。みんな協力してくれるいい会社だなぁと 1日目は(@gotyoooo)さんの最近のCYBIRDゲームインフラ環境についてでした。うちのインフラエンジニアは超優秀だと思います。転職希望の方はご連絡ください。 はじめに ES6, Promise, Generatorなどの登場によってJavaScriptの非同期処理の実行パターンのバリエーションが一気に増えた気がします。 今回は今現在、どういった手法が存在するのか、どういうメリット・デ
ちょっとしたコードで JavaScript を豊かにしよう♪ ってこと jQuery は 嫌い 使いたくない. だけど Pure JavaScript だとちょっと物足りないってときに使える便利なメソッドをまとめてみました. すべて Runstant によるサンプル付きなので, 実際に開いて動かして試すことができます. 実行したりコードをいじってみたりと遊んでみてください. 他にもこんなメソッドあるよーとかあれば追加するので 気軽に Twitter などでご連絡下さい. String.prototype.format() - 文字列フォーマット 文字列を拡張して Phyton っぽい format メソッドを定義しています. '(' + a + ')' って書いていたところを '({0})'.format(a) といった感じで書くことができるようになります. Define 実装です. Ob
JavaScriptで配列を駆使するようなプログラムを書くことも多いですが、状況によっては標準のメソッドを使うより、手書きでループを回したほうが速いこともあります。 Qiitaの記事を読んでいて 少し前に投稿されたTypeScriptの記事を見ていたのですが、その中で、 重大なボトルネックとなりうるため全体で100msに1回以上の間隔で実行される場合を除き以下のメソッドを原則使用禁止とする。 Array#concat Array#slice Array#splice なんていう記述がありました。さすがに「え、そうなの?」と思いましたが、すぐ下に付いていたベンチマークは、たしかにそのような結果を示しました。 そうなる理由 もちろん、ネイティブに実装してあることもあるような標準メソッドが、JavaScript上に実装したものより遅いというのはさすがにおかしいので、調べてみました。すると、原因が
Mozilla主催のフロントエンド開発者のためのカンファレンス「ViewSource Conference」が、北米・オレゴン州ポートランドにて11月2~4日に開催された。ここで、ECMAScriptの仕様策定のリーダーを務めたアレン・ワーフスブラック氏は「ECMAScript 2015:なぜそんなに時間がかかったのか」というタイトルでセッションを行った。氏によると、2015年6月にリリースされたECMAScript 2015は、1999年のECMAScript 3リリース以来、初めての包括的な再定義となるという。なぜ時間がかかったのか、その思うところについてインタビューを行った。 聞き手:近藤佑子(編集部)、矢倉眞隆氏 協力:清水智公氏(Mozilla Japan)、浅井智也氏(同) アレン・ワーフスブラック(Allen Wirfs-Brock)氏 アレン・ワーフスブラック氏の行ったセッ
変数の使用の単純化 withの使用の禁止 strictモードではwith文が使えなくなります。代替の手段としては、オブジェクトに短い名前の変数を割り当てて、その変数を用いて対応するプロパティにアクセスすることができます。 eval内で宣言された変数のスコープ 非strictモードでは、eval("var x ;")の様に、eval関数内で定義された変数のスコープは、evalが含まれるスコープ(関数、またはグローバルスコープ)まで広がりますが、strictモードでは、eval内で定義された変数を周囲のスコープに広げません。 単純名の削除の禁止 strict モードでは delete name を構文エラーにします evalおよびargumentsの単純化 strictモードでは「eval」「arguments」という名前がキーワードとして扱われるため、これらのキーワードに対して言語構文でのバ
たまたま、goで書かれた物をperlへ移植しようとしていたらsplitの挙動の差が出てきまして、他の言語の場合どうなるんだろうとぱっと思いついた言語で実行して見ました。以下の文字列を言語標準でついている文字列のsplitを実行した結果となります。 "/path/to/hoge/" 言語 結果 perl(5.12) ['','path','to','hoge'] golang(1.5) ["" "path" "to" "hoge" ""] ruby(2.1) ["", "path", "to", "hoge"] ptyhon(2.7.8) ['', 'path', 'to', 'hoge', ''] js [ '', 'path', 'to', 'hoge', '' ] perl6 ("", "path", "to", "hoge", "") # (perl6-m -e 'say "/pat
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く