IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

Firefox Nightly (22) に ES6のArrow Function来たる - fragmentary ということで、早速試しているわけです。 基本 var f1 = () => "OK"; // 引数なしの場合は、"()"が必須 var f2 = arg => arg + 1; // 引数一つなら、"()"は省略可 var f3 = (arg1, arg2) => arg1 + arg2; // 複数の引数の場合は"()"必須 var f4 = arg => { // ステートメントを入れる場合は "{}" でブロックを生成する if (arg) return "OK"; else return "NG"; }; // オブジェクトを返す場合は、ブロックと間違われないように // ({...}) と () 等を使用する var f5 = () => ({ a: "A", b
前回はJavaScriptのプロトタイプチェーンについて、図解を用いることでなんとか理解できました。今回はスコープチェーンに挑戦してみます。前回と同じく「1. 図解を用いる」「2. 用語を明確に定義する」「3. Standard ECMA-262 3rd editionを情報ソースとする」というアプローチで紐解いて行きます。 用語の定義 ・本エントリの文章における表記は、以下の表の「ECMA-262 3rd」に統一する ・本エントリの図における表記は、以下の表の「本エントリの略称」に統一する ・本エントリ内におけるES3とは、Standard ECMA-262 3rd editionを指す ECMA-262 3rd 本エントリの略称 JavaScript(サイ本)第5版(日本語) Execution Contexts EC 実行コンテキスト Variable Object VO 変数定義の
【重要な追記】プログラミング独学はキツいと、本題になる前に重要なことを書いておきます。 僕も最初そうでしたが、JavaScriptなどプログラミングは独学だと難しくて投げ出したくなります。 僕もできずに心が折れかけていました。 そんな時に東京でプログラミング教室をやっていることを知り、参加してみたのでした。 >>プログラミングでできること、日常生活での活用例、主要言語などまとめ プログラミング教室で理解速度は格段に上がる結果、プログラミングへの理解度がかなり高まり、その後の勉強がスムーズにいきました。 なので、僕はお金を払ってでも、プログラミング講座、スクールには行った方がいいと思っています。 当時、学生ながら3万円くらい払いましたが、そこに投資して本当に良かったです。 今月から有料プログラミングスクールに通うことに 独学だと概念理解できなくてつまずいてしんどかったので 結果として行ってよ
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog Yahoo!デベロッパーネットワークの中野(@Hiraku)です。前回のコールバック地獄に関する記事では、複雑な入れ子になりやすい非同期処理でも、GeneratorやjQuery.Deferredを使うことで、同期的な見た目に変形できることを示しました。 ところで、非同期処理においてはもう一つ「 エラー処理に例外が使えない 」という問題があります。今回はエラー処理について考えてみたいと思います。 例外を使ったエラー処理 非同期処理の話の前に、一度「例外」についておさらいしておきましょう。JavaScriptに限らず、エラーと言えばよく例外を使って記述されます。 「Web APIから500が返ってきた」とか「入力された値が期待する型
JavaScriptの関数は「ファーストクラスオブジェクト(第一級オブジェクト)」である。なので、変数に代入したり、配列にセットしたり、他の関数に食わせたりできる。この変幻自在っぷりはすごい。newでコンストラクタになるところなんて変化の術のようだ。無名関数の即実行は影縫いの術みたいだし、callやapplyでthisの値を変えるとこなんて口寄せの術を彷彿とさせる。正に忍者 |--)ノシュッ==卍 変数に代入する var foo = function() {console.log('foo');}; foo(); 配列にセットする var fnList = [ function() {console.log('foo');}, function() {console.log('bar');}, function() {console.log('piyo');} ]; for(var i =
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog Yahoo!デベロッパーネットワークの中野(@Hiraku)です。これまで、JavaScriptで非同期処理を書く上での問題として、コールバック地獄やエラー処理に例外が使えないことなどを解説してきました。 これらの問題に対処するライブラリの1つであるjQuery.Deferredに関して、もう少し丁寧に解説いたします。なお、jQueryのバージョンは記事執筆時点の最新である、1.9.1を想定しています。 jQuery.Deferredとは jQuery.DeferredとはjQueryのバージョン1.5から導入された、非同期処理をうまく扱うための標準モジュールです。使いこなすことで、以下のような効果が見込めます。 非同期処理を連結
js で DOM をゴニョゴニョしたい時、きっと皆さんは id や class で DOM に名前を付けて、その名前を利用して js の処理を書いていると思います。 例えば<input type="button" class="update" value="更新" />のようなボタンがあったとして、 js 側で更新処理を書くときには下記のように書きます。 $('.update').on('click', function () { // update 処理 }) でもこれだと問題になるケースがあります。よくあるのが、マークアッパーとフロントエンジニアが分業していて、マークアッパーがデザインのために class 名を変えてしまい js が動かなくなるパターン。分業せずに一人で全部やってたとしても、時間が経つにつれ使っている class 名が js だけで使っているのか、css でも使っている
最近東京にこなれてきたどうも僕です。何がこなれてきたって?電子マネーさ!東京ならSuica、Edy、Waon、なんでもタッチで買えちゃうんだぜ!コンビニで清算するとき、「支払いはEdyで」と一言、そして、読み取り機にソフトタッチ。支払いのシャリーンという音とともに僕の白い歯がキラーンとかがやくのさっ! そんな東京にこなれてきた僕が、今日はjQueryを使う上で気をつけておきたいポイントを何点か紹介しようと思うよ! jQueryって便利だけど、もとはJavaScriptで、インタプリタ言語で、コンパイル時に最適化なんてされないから、書き方一つで意外とパフォーマンスに差が出てくるんだよね!開発時は高スペックのPCで見てるから気づかないかもしれないけど、あなたのサイト、低スペックマシンとかモバイル端末でみたら、もっさもさかもよ! っというわけで、jQueryを使う上で気をつけたいポイントを挙げて
1 pixel|サイバーエージェント公式クリエイターズブログ サイバーエージェントのクリエイターの取り組みを紹介するオフィシャルブログです。最新技術への挑戦やサービス誕生の裏話、勉強会やイベントのレポートなどCAクリエイターの情報が満載です。 はじめまして!こんにちワン! スマートフォン版Amebaプラットフォームでフロントエンドの開発を担当している2012年入社の鳥山と申します。 そこで今回は、Node.jsを始める上で知っておくと便利な知識を現場での開発例を交えて紹介させていただきたいと思います。 想定している読者は、 ・普段HTML、CSS、JavaScriptなどのクライアントサイドの開発をしている方 ・Node.jsに興味があり、始めてみたいと思っている方 ・サーバサイドプログラミングと聞くと身震いしてしまう方 です。 ※今回は、記事にも制限があるので、Node.jsについての説
ほんとに10個だと思った?(無意味に煽っていくスタイル) 最近JSだけのリポジトリで無益なゲームを大量に作っては破棄しているのだけど、割とストレスなく出来上がってきたので書く。 長々と書くが、要は次のリポジトリに概要が詰まってる。 mizchi/mizchi_client_boilerplate · GitHub https://github.com/mizchi/mizchi_client_boilerplate 前提として、最近はCSJSでもnodeのインストールを前提とする環境が多い。必須といってもいい。 grunt gruntjs/grunt · GitHub https://github.com/gruntjs/grunt ビルドタスクを簡単に作れる。make、rake、などに相当するが、node製らしくファイルシステムの監視でアクションを作れるのが特長。$ grunt serv
決済サービスを展開する米「Stripe」は2013年2月7日、ポピュラーなJavaScript用ライブラリ (プログラム郡がパッケージされたもの)「jQuery」と連携して仕様できる決済ライブラリ「jQuery.payment」をリリースしたと発表した。 「Stripe」は、面倒で時間のかかる決済機能の導入について、どこよりも簡単に実装できるAPIを提供する企業。大手決済サービスを展開する米PayPal 創業者や、大手有力VCから投資を受けるなど注目をあびている。 今回リリースされた「jQuery.payment」を使えば、数行のJavaScriptコードだけで決済機能を導入することができるようになる。 冒頭のスナップショットは、実際に「jQuery.payment」を使ってドネーションを受けられるようにしたサイト。決済者は面倒なユーザー登録作業などをする必要なく、この画面から利用すること
この記事は年以上前に書かれたもので、内容が古かったり、セキュリティ上の問題等の理由でリンクが解除されている可能性があります。 様々なJSライブラリのまとめサイトのご紹介。主にクライアントサイドのJSライブラリを中心にコレクションしているみたいです。シンプルで探しやすかったのでメモ。 JSのコレクションサイト。サクサク動作して広告などの余計なコンテンツも無いので非常に探しやすい印象です。
最近、話題になっているJavaScriptですごいものを 実装している方々がいたので紹介したいと思います。 これだけできるなんて正直驚きました。 ①3Dゲームのような画面を再現 Minecraft4kJS こちらは、画面上でダンジョンを進んでいくような間隔を味わえるアプリケーションです。 こんな猛者がいるなんて.. ②めちゃくちゃかっこいい時計 orked from: パーティクル時計 クリックするたびに、画面がはじけるような演出がかっこいい! JSだけでこんなにリッチな作品がつくれる! ③洗練されまくってるToDoアプリ soda todo これは、ぜひ、実際に使ってみてほしいです。 タスクを追加したときの演出が格好よすぎて、 めちゃくちゃ気持ちいいです。 こんなTodoがあったら、仕事のモチベーションも上がるのではないでしょうか? ④チャット形式の登録フォーム
最近、スマホの普及と共に、プログラミングを学習したい人が増えてきているようです。 私の周りでも、プログラミングに興味があり、webサービスをつくってみたいという人が大勢います。 ということで、プログラミングをやった事がない人(または初級者)のために、 プログラミングで何を学べばいいか、 どうやって勉強したらいいかというノウハウを紹介したいと思います。 何を学ぶべきか プログラミングにはいろんな言語があるため、どの言語をやればいいかわからないという声を耳にします。 そこで、初級者でも学びやすい言語を厳選し紹介したいと思います。 1. 何はともあれ「HTML」 こちらは、Webサービスをつくる上で書かせない言語で、 今見ているページ(見た目の部分)はすべてHTMLで書かれています。 HTMLを学ぶ上では以下のサイトが参考になります。 HTMLの基本 HTML入門 ドットインスト
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog Yahoo!デベロッパーネットワークの中野(@Hiraku)です。JavaScriptでサンプルコードを書く機会があったので、どんなインターフェースで提供するのが便利なのか考えてみました。よく問題になるコールバックのネスト問題について、一般的な話をまとめてみます。 お題 突然ですが、次のような処理を行う必要があるとします。 「0」を出力する 1秒待つ 「1」を出力する 1秒待つ 「2」を出力する これをプログラムで書くとどうなるでしょうか? シェルスクリプトの場合(同期) たとえばシェルスクリプトで素直に書くと、次のようになります。
最近 JavaScript の this キーワードについての記事をいくつか見かけて 「そういや自分も昔 this キーワードについて記事を書いたなー」 と思って 古い記事 を見返してみたのですが、関数呼び出しのことしか説明してなかったので改めて this キーワードの全般的な話を書いておこうかと思います。 本記事は ECMA-262 5.1th に基づいています。 初心者向けの this キーワードの使い方の指針を示しているわけでも JavaScript 処理系の実装の説明をしているわけでもなく、JavaScript 言語コアの仕様を説明していることに注意してください。 ECMA-262 5.1th : JavaScript の言語コア部分 (ECMAScript) の言語仕様 (バージョン 5.1) 初心者向けの this キーワード周りの指針 この記事の最後の 「まとめ」 に、自分が
JavaScriptのthisは同じソースコードでも呼び出し元次第で意味が違ったりして複雑だと思われがちだけど、一回覚えてしまえば簡単だ。 JavaScriptにはthisが4種類ある これだけをしっかり覚えておけば、後は必要な時に 4種類って何があるんだっけ? と考えれば容易に思い出せる。 ちなみに、下記のコードはブラウザ上で実行することを想定している。(なのでwindowを使う) トップレベルのthis グローバルオブジェクトを指す。 var hoge = "fuga"; window.foo = "bar"; // fuga+bar と表示される console.log(this.hoge + "+" + this.foo); (function(){ // 同じくfuga+bar と表示される console.log(this.hoge + "+" + this.foo); })(
第1回のアジェンダ編では、高速化に関わる要因と解決策の全体像を紹介しました。 アジェンダ編にもかかわらず多くのブックマーク、シェアをいただきありがとうございます! 余談ですが、記事にブックマーク、シェアをしていただくと、このブログでは執筆者に経験値がたまるような仕組みになっています。 たくさん経験値を貯めると四半期ごとに良いことがあるかもしれないので、気が向いたらこの他の執筆者の記事もシェアしていただけるとうれしいです。 言葉にせずとも、わかっていただけると思いますが、この記事も・・・ね? 右上にあるボタンをちょちょっと。 本題 余談はさておき、本題に入りましょう。 今回は「無駄なリクエストとレスポンスの削減」に視点を置き、解決策について調査、計測して紹介してみたいと思います。 と思ったのですが、長くなりすぎたため、まずは「検証ツールとHTTPについて」紹介することにしました。 この記事の
まえがき 2013/01/15 に jQuery 1.9 と 2.0 ベータがリリースされて,サポートブラウザがどうとか互換性がどうとかいうお話がちらほら出る中,jQuery 1.6.3 から続く jQuery('セレクタだと思ったら要素生成でこんにちはこんにちは') 問題 への対応に一応の終止符が打たれたのでいろいろ書いてみる. ver 1.6.2 以前 jQuery の 1.6.2 までは $(String) としたとき,「String になんか( HTML の)タグが入ってるっぽいぞ」と判断すると要素を生成し,そうじゃなければ CSS 的なセレクタとして振る舞うという機能がありました. 大抵の場合,大きな問題はなかったのですけども,ユーザ入力からセレクタを組み立てるときに問題になりました. とくに '#' を含んだ文字列で ID セレクタとして振舞わせようとするのが典型的で,なかでも
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く