タグ

JavaScriptとJavascriptに関するquanonのブックマーク (120)

  • gulp と browserify と vinyl の話 - <body>

    browserify の API が変わったので、この記事のコードのままでは動きません! gulp で browserify しようとしたんだけど、 色々ハマったので、 ひとまずまとめておきたい。 登場人物 gulp ちゃん フロントエンドのビルドエンジン。 grunt を馬鹿にしてる。 browserify ちゃん CommonJS スタイルの require をフロントエンドでも使えるようにする npm モジュール。 調子に乗ってるけど webpack がきになる。 vinyl ちゃん npm 全般で使うオブジェクトの名前。モナドを感じる。 俺がさっき知った。 gulp の仕組み そもそも gulp って、確かに grunt より短く書けるけど、 具体的になにしてるのかよくわかんねーよ! って思ったので、 まず、この短いコードから考えていきたい。 var gulp = require(

    gulp と browserify と vinyl の話 - <body>
  • 6to5 に末尾呼び出し最適化が実装されたので調べてみた : document

    2月8 6to5 に末尾呼び出し最適化が実装されたので調べてみた @azu_re さんのツイートで知ったのですが、6to5 に末尾呼び出し最適化が追加されました。 Added complete TCO (tail call optimization). by RReverser · Pull Request #714 · 6to5/6to5 · GitHub ECMAScript 6 compatibility table によると ES6 transpiler では初めてテストを通った実装のようです。 6to5 ではどのような ECMA−262 5th のコードに変換して実現しているのか気になったので調査してみました。 末尾呼び出し最適化って何? その前に「末尾呼び出し最適化って何?」って人のために簡単に説明しておきます。 通常、再帰するようなコードを書くとこんな感じになります。 fun

    quanon
    quanon 2015/10/20
    そもそも「末尾呼び出し最適化」を知らなかったのでメモ。
  • JavaScriptでのDOM操作は重いのかという話とForced Synchronous Layoutについて - id:anatooのブログ

    2015年にもなるのにJavaScriptでのDOM操作のパフォーマンスについて書く。ウェブページにインタラクションを持たせたい時に、JavaScriptでDOM操作を行うことがよくある。このDOM操作のパフォーマンスについて、よく聞く意見を大別すると次の2つがある。 JavaScriptによるDOM操作は重たい レンダリングが重いだけで、DOM操作そのものはそれほど重たくない JavaScriptでオブジェクトのプロパティを操作したりする単体の処理は通常1ミリ秒もかからないが、DOM操作をするとレンダリングが完了するまでに数十ミリ秒程度かかったりする場合がある。1番目のDOM操作が重たいと言っている人は経験則的にそう言っていることが多い。 レンダリングの仕組みを知っている人は2番目の意見を言うが、重箱の隅をつつくような話をするとこれも必ずしも正しいわけではない。DOM操作するコードによっ

    JavaScriptでのDOM操作は重いのかという話とForced Synchronous Layoutについて - id:anatooのブログ
  • ECMAScript 2015(ES6)の概要と次世代JavaScriptの新たな機能

    ECMAScript 2015(ES6)の概要と次世代JavaScriptの新たな機能 泉水翔吾 この記事は「ECMAScript2015/ES6特集」の第1回目です。この特集ではJavaScriptの次世代仕様であるECMAScript 2015(ECMAScript 6)を取り上げ、歴史や経緯から追加された機能や文法の詳細など複数回に渡って解説していきます。 ECMAScriptとJavaScript そもそもECMAScriptとはなんでしょうか?JavaScriptとは一体何が違うのでしょうか?ECMAScriptとJavaScriptの関係は、JavaScriptが生まれた1995年まで遡ります。 JavaScriptは1995年、当時Netscape CommunicationsにいたBrendan Eich氏がWebで実行できるスクリプト言語として開発しました。その後Inte

    ECMAScript 2015(ES6)の概要と次世代JavaScriptの新たな機能
  • gulp v4.0を眺めてみた

    gulpfileをES6に置き換える必要があり、何気にgulpの情報追っていると、 そろそろv4.0がリリースされそうなのでざっくりと眺めてみた。 gulpfileをES6で書くまず、来の目的だったこの件、v3.9ですでに対応されていた。 以下の条件であれば利用可能のようだった。 gulp v3.9以上 gulpfile.jsをgulpfile.babel.jsとする babel-core をインストールすること 内部的にはbabelで変換しているようだ。 続いて、v4.0のCAHNGELOGも眺めてみた。 gulp4.0をインストール cliの変更点--tasks-json と --verify オプションが追加されてる。 –task-json はタスクをjson形式で出力する。 –verify はpluginsがpackage.jsonを参照しているかチェックする。 APIの変更点大

  • ES5, Property Descriptor解説 - 枕を欹てて聴く

    JavaScript Advent Calendar 2010 6日目のid:Constellationです. ECMAScript5になって大きく変更されたといえば, strict mode, early error, Object extras, そしてProperty Descriptorの概念です. ということで今回はES5 PropertyDescriptorについてまるっと分かってしまおうということで. Property Descriptorとは JavaScriptのObjectは事実上Hash Tableです. しかし, key -> value という対応でHash Tableに格納されているのかといえばそうではありません. なぜなら, EcmaScriptにはgetter / setterやattributeが存在するからです. // getter / setter v

    ES5, Property Descriptor解説 - 枕を欹てて聴く
  • ES2015(ES6)な時代だからこそ、ES5を改めて調べたJavaScript初級者のメモ - Qiita

    はじめに ECMAScript2015(第6版、通称ES6)が承認され、Babelも登場し、世はまさにES2015時代。なのだけど、JavaScript初級者としてはES5自体をちゃんと把握していなかったりするので、今さらながら調べてみることにした。 間違っている所があれば、ご指摘いただけると大変助かります。 ECMAScript5で追加されたもの ECMAScript5 compatibility tableにて、ES5で追加された機能がどのブラウザに対応しているかが分かる。また、es5-shimというライブラリが、古いブラウザでES5の一部の機能が実装可能になる。 基的には、IE9以上/iOS7以上、それ以外はモダンなブラウザであれば大抵対応している。 use strict スクリプトの先頭、もしくは関数内の先頭に記載することでstrict modeで実行される。自分が書いているもの

    ES2015(ES6)な時代だからこそ、ES5を改めて調べたJavaScript初級者のメモ - Qiita
    quanon
    quanon 2015/09/13
    やべえ。ES5 も知らないことばかりだった。
  • 開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました |https://wp.yat-net.com/name

    2015年 09月 10日 開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました カテゴリ: gulp タグ:gulpタスクランナー タスクランナーの一つであるgulp(ガルプ)。使い出すとすごく便利で今ちょっと手放せない開発ツールの一つなんですが、使ってない人からすると、導入コストとか学習コストが気になって、まだ手を出してないという方もいますよね。なので、今回導入用の記事を書いたので、ちょっと気になってるという方、試してみたかったという方に役立てばいいなと思います。 1.タスクランナーとは? gulpで何ができるのか? 2.gulpに必要な環境を整える – Node.jsのインストール 3.gulpに必要な環境を整える – package.jsonの作成 4.gulpに必要な環境を整える – gulpfile.jsの作成 5.gulp-ejsを使った開発環境 6.

    開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました |https://wp.yat-net.com/name
  • JavaScriptのモジュール管理(CommonJSとかAMDとかBrowserifyとかwebpack) | tsuchikazu blog

    昨年のAdvent Calendarを眺めたり、JS周りの記事を見ていると、RequireJSとか、CommonJSとか、AMD、Browserify、webpackあたりが、同じような文脈で登場するんですが、それぞれ何を指しているのかよくわからなかったため、今更ながらまとめてみます。 前提 小規模にしかJavaScriptを使っていないWebサイトでは、jQueryを使ってDomイベントで色んな処理をして、Domに反映させる。というような処理が、ごちゃっとまとめて書くことが多いかと思います。ごちゃっととは、特にDomにしか情報を保持していない状態を指していて、イメージとしてはこのようなコードです。 $(function() { # イベントハンドラ $("#btn").on("click", function(){ $.ajax({ url: "api/resources", dataT

    JavaScriptのモジュール管理(CommonJSとかAMDとかBrowserifyとかwebpack) | tsuchikazu blog
  • JavaScriptのデバッグのコツと技 | POSTD

    以前の記事で、 Webアプリケーションのデバッグの仕組み について触れました。今回は実践的なJavaScriptのデバッグについて掘り下げていきたいと思います。 ブラウザデベロッパツール 私の個人的なお気に入りはChromeデベロッパツールです。SafariやFirefoxはChromeほどの高水準に達していません。しかし、徐々に改善されてきています。FirefoxにはFirebugと改良されたFirefoxデベロッパツールが組み合わされた機能が備わっています。もし、Firefoxチームがビルトインされているデベロッパツールの改良の中で素晴らしい仕事をし続けたとしたら、Firebugはいつか、すたれるかもしれません。 個人的な好みにかかわらず、ターゲットとするあらゆるブラウザで、全てのコードのテストやデバッグができるようにすべきです。”あらゆるブラウザ”には、かの有名なInternet E

    JavaScriptのデバッグのコツと技 | POSTD
  • JavaScriptフレームワークの寿命 | POSTD

    (注記:9/13、いただいた翻訳フィードバックを元に記事を修正いたしました。) 半年ごとに”今一番ホットな”フレームワークが新たに登場しては、私たちは興奮に沸き返ります。 誇大広告を信じてはいけません。 フレームワークの寿命 はプロジェクトの成功を左右するほど重要な要素です。フレームワークを選ぶ際、テクノロジにおける多くの意思決定者は納得のいく選択をするために、コミュニティの大きさ、人気、大企業によるサポートの有無などを基準にしています。しかし実際は、こうした要素によって寿命が決まるわけではありません。 最初は勢いがあったのに、徐々に弱まり、最終的には線香花火のごとく儚く消えてしまうようなフレームワークを選んでしまうと、書き直しに無駄な時間を費やしたり、チームの士気を下げたりする原因となります。記事は、そうした残念な結果を回避するヒントをまとめたものです。 記事では以下のことを示したい

    JavaScriptフレームワークの寿命 | POSTD
  • Effective ES6

    Talk about ECMAScript 6 at YAPC::Asia Tokyo 2015 http://yapcasia.org/2015/talk/show/44721562-10e4-11e5-88a0-d7f07d574c3a https://www.youtube.com/watch?v=oSPv5IPDSxERead less

    Effective ES6
  • Getting started with ECMAScript 6

    This blog post helps you to get started with ECMAScript 6 (ES6): It explains how you can interactively try out ES6. It lists ES6 features that are easy to adopt, along with how those features are coded in ES5. Trying out ECMAScript 6  # There are three simple ways to play with ES6: Web browser: use the online Babel REPL, an interactive playground that compiles ES6 to ES5. There is nothing to insta

  • もうES6 (ES2015) でいいんじゃないか

    個人プロジェクトは ES6 で書いている ブログの頻度が落ちているので、継続のための雑さな記事を醸し出す時期。 以前に es6-Kameita を紹介したときの繰り返しですが、Babel (旧名 6to5) の登場から個人プロジェクトは ECMAScript 6 で書くようにしています。仕事でも新しい開発がある予定なので、そこでもきっと ES6 を使うことでしょう。 ahomu/Talkie ahomu/Urler ahomu/Claylump ということで「もう ES6 でいいんじゃないか」という気持ちを書きます。 厳密には、ES6トランスパイラを使っていけばいいんじゃないか、という話 仕様周りは(きっと)安定してきている 世間的の大多数的には、ES6とES7の境界すらハッキリしていないであろう状況ではありますが、ES6自体は2015年中の勧告を目標に進んでいることから、それなりに安定し

    もうES6 (ES2015) でいいんじゃないか
  • 優秀なJavaScriptの開発者になるための5か条 | POSTD

    (注記:7/15、いただいた翻訳フィードバックを元に記事を修正いたしました。) 子供の頃、私の興味は互いに関係性のない様々な分野に及んでいました。数学歴史も大好きでした。 ルネッサンスマン 、つまり 博学者 と言う、複数の分野に秀でた人になりたいと思っていました。これはとても難しい課題で、私は突如として、器用貧乏な人になってしまう危機に直面したのです。 私は特定の分野に特化しなくては、と考え始めました。そうすればたとえルネッサンスマンにはなれなくても、少なくとも、器用貧乏にならなくても済むと思ったのです。どうしたらソフトウェア開発をするのに必要な広い知識を保ちながら、1つの分野で専門性を高めることができるのでしょうか。 この記事では、過去5年間、私が良いJavaScript開発者になるために使ったテクニックとリソースの概要をお伝えしようと思います。 最近の多くのWeb開発者は、ある共通の

    優秀なJavaScriptの開発者になるための5か条 | POSTD
  • ES6 Promise Anti-Patterns and Best Practices

    This domain is registered at Dynadot.com. Website coming soon.

  • LocalStorageがおもいのほか便利すぎたのでまとめ - それマグで!

    localStorageを使って見た.わず嫌いでした.すごく便利ですね cookieで保存するより相当便利です. cookie VS localstorage 比較 Cookieの特長 ドメイン毎にデータが保存される.(SameOriginの原則) Stringが保存される. HTTPリクエストで毎回サーバーに送られる JavaScriptからアクセス可能 有効期限がある LocalStorageの特長 ドメイン毎にデータが保存される.(SameOriginの原則) Stringが保存される. HTTPリクエストで毎回サーバーに送られない JavaScriptからアクセス可能 有効期限が特にない 比較まとめ Cookieの特質から、HTTP通信で送る特性を省いたものHTTP通信で送る必要がないので,Expires(期限)も省略される localStorageの保存方法 js> local

    LocalStorageがおもいのほか便利すぎたのでまとめ - それマグで!
  • Top 7 Ruby on Rails Podcasts

    At Netguru, we specialize in helping businesses unlock their full potential through our cutting-edge Ruby on Rails application development solutions. As the leading Ruby on Rails Development Company, we boast an impressive track record of over 12 years in RoR web and mobile development. Our extensive expertise in the RoR framework ensures swift and cost-effective delivery of even the most complex

    Top 7 Ruby on Rails Podcasts
  • モダンJavaScript環境構築一歩目

    JavaScriptの現状を支えるエコシステム群を軽く紹介して、モジュールについて少し掘り下げた勉強会

    モダンJavaScript環境構築一歩目
  • The Difference Between Throttling And Debouncing | CSS-Tricks

    Get affordable and hassle-free WordPress hosting plans with Cloudways, now offering 40% off for 4 months, and 40 free migrations. I got these confused the other day and someone corrected me. So I tossed it on the ol’ list of blog post ideas and here we are. Both of them are ways to limit the amount of JavaScript you are executing based on DOM events for performance reasons. But they are, you guess

    The Difference Between Throttling And Debouncing | CSS-Tricks