タグ

関連タグで絞り込む (220)

タグの絞り込みを解除

JavaScriptとJavascriptに関するsagarayaのブックマーク (580)

  • atom-shell情報 - Qiita

    atom-shellとはどういうもので、どのようにすれば動かせるのかということを調べているので、その過程で得られた情報をまとめておく。 atom-shellでデスクトップアプリをつくれる GitHub製のAtomというエディタはatom-shellというライブラリを利用して実現されている。atom-shellはJavaScriptデスクトップアプリケーションをつくるための便利なライブラリで、ネイティブAPIを実行するための実行環境を提供することでそれを実現させようとしている。Webサーバの代わりにデスクトップアプリケーションに特化したNode.jsの実行環境だと考えても良いだろう。 atom-shellには2つの側面がある Node.jsでWebアプリを書いたことがあれば分かるかもしれないが、JavaScriptのコードにはサーバサイドで動かすためのものとクライアントサイドで動かすための

    atom-shell情報 - Qiita
  • 【翻訳】リッチなWebアプリケーションのための7つの原則 - from scratch

    はじめに この話はGuillermo Rauch氏が書いたhttp://rauchg.com/2014/7-principles-of-rich-web-applications/ という記事の翻訳です。許可を得て翻訳しています。 ここ最近Web業界を賑わしているSingle Page Applicationの必要性、HTTP2/SPDYといった技術、リアクティブプログラミングやIsomorphicデザインという考え方について包括的にまとめたすごく良い記事になっております。 最初に断っておきますが、ものすごく長いです。各セクションがわかれているので時間がない方はセクションごとに書かれたtl;DRとまとめを読むだけでも参考になるかと思います。 ちなみに明日のNode学園祭には、記事を記述したGuillermo Rauch氏が見えるので、そこで詳しく聞いてみるのもいいのではないでしょうか。

    【翻訳】リッチなWebアプリケーションのための7つの原則 - from scratch
  • npm とフロントエンドのパッケージ管理の未来

    JavaScript 系パッケージマネージャの重複問題 npm は言わずもがな Node.js のパッケージマネージャだが、フロントエンド開発においては Bower も利用するのが一般的になっている。この現状の問題点は、package.jon と bower.json という似たような管理ファイルを二重で管理しなければならないということだ。 現状の使い分けをおさらいをしておくと、次のような感じになる。 タスクランナー(Grunt/gulp)・モジュールシステム(browserify/webpack)・テストスイート(karma/testem)などの開発環境系の管理が npm の主なお仕事。インストールされたパッケージは node_modules 内に展開されて、CommonJS スタイルのモジュール管理から利用する。 題につながる話としては、ブラウザで動くライブラリの一部は npm にも

    npm とフロントエンドのパッケージ管理の未来
  • FINAL FANTASY Record Keeper の作り方

    20190814 AWS Black Belt Online Seminar AWS Serverless Application Model

    FINAL FANTASY Record Keeper の作り方
    sagaraya
    sagaraya 2014/11/12
    ハイブリッドアプリだったのかー。すごい
  • Class構文について - JS.next

    概要 待ち焦がれた人も多いことだろう。ES2015の一番の目玉機能とも言えるクラス構文が、ついにV8でサポートされた。 Class構文は、『関数(コンストラクタ)定義』+『.prototypeへのメソッド定義』の糖衣構文である。 JSで今まで様々に工夫されてきたクラスの書き方を、綺麗に統一してくれる可能性を秘めている。 クラスを作る 従来、Catクラスを作ろうとした場合このように書いてきた。 function Cat(name) { this.name = name } Cat.prototype.meow = function () { alert( this.name + 'はミャオと鳴きました' ) } しかしこの書き方だとどうしても、コンストラクタとメソッドの定義が分離されているため、クラスとしてまとまりがなく分かりづらく感じる。 メソッドが増えてきた時も、Cat.prototyp

    Class構文について - JS.next
  • [JavaScript] newは大事だよ! / LiosK-free Blog

    2010-07-19 カテゴリ: Client Side タグ: JavaScript トラックバック JavaScriptのnewって何?一体何なの?という話 - 愛と勇気と缶ビール クラスってものはJavaScriptにはないはずなのに、 new ClassName();と書くとあたかもClassNameクラスのオブジェクトのインスタンスが生成され、それが返ってくるかのような挙動をしている。 これは気持ち悪い。言語仕様としてはクラスは来存在しないのに、クラスのようなものが導入されている。まともな神経を持った人間なら、一体 new演算子って何なの?という疑問を持つのが当たり前である。 こんな扱いを受けているnewがあまりにも不憫で涙した>< newはprototype-basedなJavaScriptを書くための唯一の手段[1]で、真にJavaScriptらしいコードを書くためには欠か

    sagaraya
    sagaraya 2014/10/29
    「new演算子は、既存のオブジェクト (プロトタイプ) をベースに、新しいオブジェクトを生成するための演算子」
  • 写真サービス機能のブラウザ内実装 | 株式会社サイバーエージェント

    2-1. リサイズ処理   Figure 2. Mobile Safariによる画像アップロード画面 最終成果の画像データを、サーバーサイドAPIにPOSTすることがゴールである。Androidにおいて、XMLHttpRequestでBlobをリクエストに設定しても空のボディで送信される問題がみられるため、今回はBase64 encoded DataURIとしてPOSTすることにしている。 2-1-1. 基実装 ƒ 今回のリサイズ処理では、Canvas要素とFile APIを利用する。基方針としては、inputtype='file'のchangeイベントから、Fileオブジェクトを取得し、それを一度Canvasに書き出すことでリサイズを試みる。最終的には、canvas.toDataURL() によってDataURIを取得する。 下記に、基実装のサンプルを示す。( http://co

    写真サービス機能のブラウザ内実装 | 株式会社サイバーエージェント
    sagaraya
    sagaraya 2014/10/28
    画像リサイズの知見
  • スマートフォンWebのフロントエンドを高速化する取り組み - クックパッド開発者ブログ

    ユーザファースト推進部の丸山(@h13i32maru)です。 先日「撮るレシピ」というサービスを cookpad.com にて公開しました。「撮るレシピ」というサービスは料理や雑誌のレシピを写真に撮ってクックパッド上に保存できるというものです。料理や雑誌でレシピを良く見る方はぜひ使ってみてください(Androidアプリ版もあります)。 この「撮るレシピ」は全体公開前に一部のユーザに限定公開をしていました。そして全体公開をするにあたりフロント側のコードを全面的に書き換え高速化を行いました。その結果、最大で30倍高速化することができユーザの使い勝手が向上しました。以下が「書き換え前」と「書き換え後」の計測結果です(Android端末8機種 + iOS3機種で各操作のターンアラウンド時間*1を計測)。 閲覧系 最大: 30倍高速化(4.2秒→0.14秒) 平均: 15.7倍高速化(3.6秒→

    スマートフォンWebのフロントエンドを高速化する取り組み - クックパッド開発者ブログ
    sagaraya
    sagaraya 2014/10/28
    SPAにすると最初のロードが重くなるけど、この規模だからそんなに問題にならなかったのかな。あとclickイベント遅い件はfastclickというライブラリで解決できる。高速回線の割合はどうやって調べたんだろ
  • jThree Class Tokyo #1 に行ってきました | takemikami's note

    10/26(日)に【たった5時間でWebGLをマスターするjQueryユーザーのための勉強会】jThree Class Tokyo #1 というイベントに行ってきました。 jThree Class Tokyo #1 http://jthree.doorkeeper.jp/events/16100 会場は、渋谷のmixiさんでした。会場には、モンスト1周年のポスターが貼られていました。 当日の流れは、jThreeで作った作品の紹介、jThreeの使い方の概要、チーム毎に分かれて実際に作品を作ってみるという流れでした。 ちなみに次回は、来月(11/22)に開催予定とのことです。 https://atnd.org/events/58240 jThreeで作った作品の紹介URLメモをとっていたものだけの紹介になってしまいますが、jThreeを使うと、次のような作品がthree.jsよりも簡潔なプロ

    jThree Class Tokyo #1 に行ってきました | takemikami's note
  • JavaScript:undefined値の判定

    JavaScriptでは初期化されていない変数には全て「undefined」という値が入っています。 var a; alert(a); //undefinedが入っている これを利用して、変数が定義済みかどうかを判別することが可能です。…が、やり方がいろいろあるみたいなので、まとめてみることにします。 undefinedと比較する if (a === undefined) { alert("aは未定義"); } グローバル変数として、そのまんまundefinedという名前の変数が用意されているので、それと比較するやり方。一番素直な方法ですが、JavaScriptにおいては良くない書き方とされています。 undefinedは予約語ではなく、単なる変数です。だから上書きすることができるし、関数スコープ内で同名のローカル変数を作ることもできます。(ただし最近の処理系ではconst扱いになって上書

    JavaScript:undefined値の判定
  • Vue.js で 複数のViewModelを連携させる - kitak blog

    追記: 2016/04/28 1.xのVueでは、Reactのようにpropsを利用することでコンポーネント間で値の受け渡しを行うことができます。 また2.0では、$dispatch, $broadcastは非推奨になるので、注意してください。 refs: 2.0 features · vuejs/vue Wiki · GitHub こんにちは。りんご と にんじん と 生姜の入ったジュースを飲んでいます、きたけーです。 今日はVue.js で 複数のViewModelの連携について考えてみます。 VueはViewModel間の親子関係を定義することができますが、今回考えるのは(DOMで)親子関係がなく「リストからひとつの項目を選択したときに、その項目の詳細を別の要素で表示する」ようなケースです。 べたに書くと、こんなかんじになります(Coffeeです)。 listVM = new Vue

    Vue.js で 複数のViewModelを連携させる - kitak blog
  • 【JavaScript 】プロトタイプを中心に。Object.prototype.toString.call の理由。 - せかいや

    topic summary study about JavaScript prototype. (not prototype.js) JavaScript 難しい。。 Objectプロトタイプによって継承されたプロパティはenumerableではない enumerableではないため、for in文には出現しない。 var map={}; for (var key in map){ console.log(key); }何も出力されない 存在を確認する場合はgetOwnPropertyNamesを使う。 Object.getOwnPropertyNames(Object.prototype);■実行結果 ["constructor", "toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "

    【JavaScript 】プロトタイプを中心に。Object.prototype.toString.call の理由。 - せかいや
  • scriptのdefer/asyncを理解し、ページの高速化方法を探る | ゆっくりと…

    Yslow ルールでは、スクリプトはページの最後尾、つまり </body> 直前に置け、と言っています。なぜなら、スクリプトの読み込みや実行により、他のページ要素の読み込みやレンダリングがブロックされてしまうからです。 一方、古くは IE4 の時代から Microsoft はこの問題に対処するため、defer 属性という独自の解決策を実装してきました。これは HTML 4.01、XHTML 1.0、1.1 で仕様として採用され、HTML5 にも発展する形で引き継がれています。 IE 以外のブラウザも既に対応されており、IE の独自仕様という色合いが濃かった従来と異なり、これからは広く利用されていくのではないかと思います。 下のビデオは、スクリプトの位置と defer 属性のあり/なしによる、ページの読み込み/表示速度の違いを Pagetest.com でテストしてみたもので、明らかな差異が

    sagaraya
    sagaraya 2014/10/20
    asyncだと順序が保証されない
  • Bibi | EPUB Reader on your website. — ビビ。EPUB リーダを、あなたのウェブサイトに。

    アクセスすればすぐにが読める URL をメールや SNS で共有したり、 ブログやウェブページに EPUB を貼り付けることができるようになるのです。

    Bibi | EPUB Reader on your website. — ビビ。EPUB リーダを、あなたのウェブサイトに。
  • Home - Browserscope

    Disclosure: Aussie Hosting is community-run. We sometimes earn a commission when you buy hosting through our links. Learn more. On Jan 21st of 2020, BrowerScope has joined forces with Aussie Hosting. Browserscope is a community-driven project for profiling web browsers. The goals are to foster innovation by tracking browser functionality and to be a resource for web developers. Unfortunately as of

    sagaraya
    sagaraya 2014/10/06
    同時接続数とか調べられる
  • GitHub - petehunt/webpack-howto

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - petehunt/webpack-howto
  • BrowserifyからWebpackへの移行時の注意点 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 思い立ったが吉日ということで、プロジェクトのモジュール管理をRequire.jsからBrowserifyへと移行し、その直後にWebpackに移行しました。もうちょっと考えてツールを選ぼうと思います。 さて、Require.jsからBrowserifyへ変えた理由は、シンタックスをCommonJS的に書けるようになって、全体がシンプルになるから、という理由でしたが、BrowserifyからWebpackへの移行は、もうちょっと切ない理由での移行になりました。 Webpackとは ドキュメントも若干わかりづらいですが充実しており、基的に

    BrowserifyからWebpackへの移行時の注意点 - Qiita
  • iOS7.1のMobile Safariでアドレスバーを隠す方法 - インターファーム開発部ブログ

    こんにちは、河森です。 今日はリリースされたばかりのiOS7.1に搭載されているMobile Safariについて書こうと思います。 以前のアドレスバー隠し iOS6.xまではページの読み込みが完了した後に、 JavaScriptにて縦にスクロールさせることでアドレスバーを隠すというやり方がありました。 iOS7.0ではどうなったのか 以前まで使えていたやり方は通用しなくなり、 ユーザーがページをスクロールしない限りは、 フルスクリーンにすることは出来なくなってしました。 これにより、iScrollやSencha Touchなどのライブラリやフレームワークを利用したり、CSSの-webkit-overflow-scrolling: touch;などでページのスクロールを制御している場合は、表示領域が狭いままという問題がありました。 iOS7.0では開発者主導でアドレバスバーが消せなくなった

    iOS7.1のMobile Safariでアドレスバーを隠す方法 - インターファーム開発部ブログ
  • モバイル時代のWebパフォーマンス

    2014/8/30に開催された「HTML5とか勉強会 in IWATE 2014」のセッション資料です。

    モバイル時代のWebパフォーマンス
  • Server Sent Events(SSE)の使いどころと使い方 | GREE Engineering

    Flameの箱を捨ててしまったためどうやって送り返すか困っています。@kyo_agoです。 今日は2014年6月にβ公開したGREEチャットで通信に使用しているSSEを紹介したいと思います。 SSEとは SSEとはServer-Sent Eventsの略でW3Cで提案されているhtml5関連APIの一種です。 これはサーバとの通信やJavaScript APIを中心としたもので、サーバからPush通信を行うための仕様です。 サーバからPush通信に関してはこれまでもCometやWebSocketが存在しましたが、SSEは互換性や効率などの点でそれ以外の技術に対する特徴があります。 ここからは具体的な仕様や、実際に使用した場合の感想などを紹介したいと思います。 通信方式 SSEはHTTP/1.1を使用し、Content-Type: text/event-streamで通信を行います。 基

    Server Sent Events(SSE)の使いどころと使い方 | GREE Engineering
    sagaraya
    sagaraya 2014/09/24
    やっぱつらみがあるんだなあ