すごい初歩的なことかもしれないのだけれど、年単位ぐらいで誤解したままコードを書いていたので懺悔のためにも書いておく...。 何が違ったかというと、async function の扱いである。async function も function と同じだとおもっていて、 Promise を返さないと呼び出し側で await できないと勘違いしていた。そのため、今までは

すごい初歩的なことかもしれないのだけれど、年単位ぐらいで誤解したままコードを書いていたので懺悔のためにも書いておく...。 何が違ったかというと、async function の扱いである。async function も function と同じだとおもっていて、 Promise を返さないと呼び出し側で await できないと勘違いしていた。そのため、今までは
JavaScript has been among the most influential technologies for almost a decade now. A lot of this is due to the sophisticated JavaScript engines in modern browsers, Node.js, and Electron. This talk explores important ingredients of these modern JavaScript engines, and focuses on the fundamental features that V8, Chakra, SpiderMonkey, and JavaScriptCore all have in common. Joint talk by @bmeurer a
初夏のJavaScript祭 2018 での登壇時に発表した資料です。 https://javascript-fes.doorkeeper.jp/events/73314 #jsfes
9つのおとぎ話 CSSは迷走しています。JavaScriptでドキュメントをスタイリングしているプロジェクトでは、多くの場合誤った理由からその方式を選択しています。本稿では、よくある誤解(神話)を列挙し、そうした問題に対するCSSソリューションを紹介します。 本稿は、特定のプロジェクトや人物への攻撃を意図するものではありません。ここでは、“CSS in JavaScript”(CSS in JS)を styled-components を使用することと定義します。これは、Reactのコンポーネントをスタイリングする最近のトレンドとなっています。 styled-components の作者である Max Stoiber と Glen Maddern 、また彼らに協力した人々は皆、卓越したアイデアと善意にあふれる優秀な人々です。 完全な透明性のために断っておくと、私は react-css-mo
JavaScriptで非同期処理をasync/awaitを使って同期的なスタイルで書いていると、すべてのコードをそのスタイルで統一して書きたくなる。なので非同期処理を開始して実行を明け渡したいときはもちろんawaitを使うし、非同期処理に失敗したときはtry-catch構文で例外ハンドラに制御が移るようにする。ただ、同期的なスタイルで書けない処理が存在するために、どうしてもすべてを統一することはできない。Direct styleで書けないcontrolは継続渡しスタイル(CPS)を使って書くしかないからだ。 JSの場合でいうと、並行制御周りがそれにあたる。Promise.all() や Promise.race() などは対応する構文がJS側に存在しない。 例えば Promise.all() に対応する awaitall みたいな構文が言語側に欲しくなる。こんなふうに: const [x,
JavaScriptフレームワークのおすすめ本まとめ (2018年4月) Webフロントエンドで脱jQueryした先の乗り換え先、モダンなJavaScriptフレームワーク群。浮き沈みが激しいですが2017−2018年現在、Angular/React/Vue.jsが大まかに3強と言われています。FWの選定で色々調べたり本を読んだりしたので、このエントリでは2018年現在日本語で読める本をまとめてみました。4月といいつつその後もちょっと混ざっています。それぞれのフレームワークと関連してモバイルアプリを開発できる仕組み(Ionic, React Native, Weex/Vue Native)の本は含んでいません。 JavaScriptフレームワークのおすすめ本まとめ (2018年4月) Reactの本 短時間で概要を把握したい Reactではじめるフロントエンド開発入門 いまから始めるWeb
JavaScriptフレームワークを比較してみよう (2018年4月) トレンドの移り変わりが激しいWebフロントエンド。2017-2018年現在、JSフレームワークで最も有力な3強がAngular/React/Vue.jsの3つと言われています。他に日本で比較的聞くのはRiot.js、Ember.js、Hyperappなどがありますね。 ちょいとFW選定の技術調査でいろいろ調べたりしたので、このエントリでは初学者なりに比較を整理してまとめてみたいと思います。 なお最後にも書いてありますが、実際に使ったりして得られた知見もあれば、入門レベルだと確かめようがないので本やネットの情報や意見の中で多いものの受け売り的になっているところもあります。フレームワークって結局どれがいいのという話は混乱したり場合によっては荒れがちですが、最終的には情報は各自の判断でご利用ください。フレームワークは開発をよ
2020/01/23追記: これはすでに古い情報です。ESLintとPrettierは同時に使わないのが今の推奨設定です。最新の情報は以下のところにあります。 https://future-architect.github.io/typescript-guide/baseenv.html 以下は過去の情報です PySpa統合思念体です。 go fmt便利ですよね。設定なしで言語が定めるルールで一発でやってくれるので良いですね。で、JavaScriptでは歴史的経緯もあって、フォーマットの流派はいろいろあります。 インデントはスペース2/4、ハードタブ 文字列にはシングルクオート使う派(英語キーボードだとシフトキー押さなくていい) 末尾のセミコロンは必須・省略 そのためカスタマイズ可能なフォーマッターが必要となります。カスタマイズの柔軟性や歴史的経緯や新しい文法への対応などで、いくつかのツー
※今後「前者のコード」「後者のコード」というパワーワードが飛び出しますが、これは上記2通りのコードを指し、それぞれ下記のように定義します。 前者のコード: if文やfor文を活用したALGOL系の一般的な書き方 後者のコード: JSのメソッドチェーンを活用した関数型モドキ 前者のfor文を使ったプログラミングに慣れている人は前者の方が良いかもしれません。 しかし、前者寄りの人が上記のコードを一目で把握できるように、後者のスタイルに慣れた人も上記のコードを一目で把握します。 arr.filter(it => it % 2 === 0): 配列から偶数の要素だけ抜き出した配列を返す arr.reduce((a, b) => a + b, 0): 全ての要素を合計した数値を返す 行頭で何がしたいかの目的(filter, reduce)が書かれているので、 行頭だけざっと眺めれば大体何がしたいのか
こんにちは、UX開発部の橋口です。 Webサービスを開発するうえで、JavaScriptは絶対的に使われる技術だと思います。 みなさんもJavaScriptでエラーの調査をする際に、クライアントで実行されるためエラーの内容やどこで発生したかが分からなかったり、問い合わせ内容の再現ができず困ったことがあるのではないでしょうか? 解決の糸口を作るためには、クライアントサイドで発生したエラーに関する情報を収集してあげる必要があります。 JavaScriptのエラーログも収集できる著名な製品もありますが、クラウド環境への導入の場合には高額になってしまったり、独自に解析する場合でも、環境などを用意するのも大変ですし管理も大変です。 そこで、今回の記事はトレジャーデータサービス by IDCFにJavaScriptのエラーログを収集する方法について紹介します。 課題 JavaScriptのエラーを収集
どうも、まさとらん(@0310lan)です! 今回は、面倒な開発環境を一瞬で構築してブラウザ上からWebアプリを気軽に開発&公開できる無料のWebサービスをご紹介します! 完全なオープンソースで開発が進められており、React / Angular / Vueなどのプロジェクトを誰でも簡単にプログラミングできる高度なエディタを搭載しているのが特徴です。 【 CodeSandbox 】 ■「CodeSandbox」の使い方 それでは、まず最初に「CodeSandbox」の使い方から見ていきましょう! サイトにアクセスしたら、画面右上にあるボタンをクリックします。 次に、「React」「Vue」「Angular」などのプロジェクトを選択する画面が開きます。 ここで好きなフレームワークを選んだり、素のJavaScript(Vanilla JS)やCLIツール、GitHubからリポジトリを読み込んだ
コンソール まずは、JavaScriptのコンソールを使用して、「Hello World!」を表示します。 コンソールの表示方法 Edge F12 Chrome command+option+J (win: ctrl+shift+J) Firefox command+option+K (win: ctrl+shift+K) Safari command+option+C Safariの場合はショートカットが他のアプリ(Alfred)に使用されている場合があるので、環境設定から「メニューバーに開発メニューを表示」をチェックすると、メニューバーからコンソールを表示できます。
とりあえず動けばいい、の精神でコードを書ける個人開発とは違い、仕事やオープンソースプロジェクトにおけるコーディングでは、「他人が読むコード」を意識して書く必要があります。 他人が読むのですから、もちろんわかりやすいコードでなくてはなりません。でも、「わかりやすい」とは何でしょう。どうしたら実現できるのでしょう。 この記事では、他人が読む可能性があるコードを書くときに気をつけていた方がいい事項について、いくつか紹介します。 まえがき 私が社会人になって数ヶ月が経ちました。会社では自分でコードを書くのはもちろん、他人の書いたコードをいじるという、今まであまり経験していない作業をすることもあります。 そしてその中で使われている言語にはJavaScriptも含まれます。JavaScriptは平易な言語であり、クライアントサイドでもサーバサイドでも採用できるので、様々な場面で使用されています。 さす
JavaScriptでの開発にライブラリとフレームワークは欠かせないと言っても過言ではありません。しかし、種類が多すぎて選ぶのに迷うという方は多いのではないでしょうか? そこで本記事では、人気のJavaScriptフレームワーク&ライブラリをまとめました。各フレームワーク・ライブラリの特徴を解説していますので、「.js」選びに迷った際には、ぜひ参考にしていただければ幸いです。 JavaScriptライブラリとフレームワークの違い JavaScriptライブラリとJavaScriptフレームワークがあるのは知っているものの、実は違いをよく分かっていないという方は多いのではないでしょうか? たとえば、Reactはライブラリで、Angularはフレームワークですが、解説記事でも混同して使われるケースがしばしば見受けられます。開発で利用するならそれぞれの役割の違いを正しく理解しておいた方がよいでし
はじめに 今更ですが、ES2015(ES6)で追加された機能や構文に関する備忘録です。 「JSは書けるけどES2015(ES6)はわからないっす...!」といった人達向けの記事です。 入門記事のためイテレータやジェネレータ等のわかりづらかったり、 説明が長くなりそうな機能や構文は割愛しております。 ES2015(ES6)とは ECMASCriptの6th Editionのこと。ECMAScript 6th editionの6を取ってES6と呼ばれていたが、 2015年に標準化されたため正式名称はES2015になった。 正式名称がES2015ならES6という名称を使うのは間違いなのか どちらの名称でも問題はない。 ES6の名称の方がエンジニアコミュニティに中では浸透しているらしく、ES6と記載されていることが多い。 詳細は以下を参考。 ES6 or ES2015 ? 〜WEB+DB PRES
JavaScriptチュートリアルBeginner's tutorialsYour first website: Adding interactivityDynamic scripting with JavaScriptJavaScript frameworks and librariesJavaScript ガイド入門編文法とデータ型制御フローとエラー処理ループとイテレーター関数式と演算子数値と文字列日付と時刻の表現正規表現インデックス付きコレクションキー付きコレクションオブジェクトの利用クラスの使用プロミスの使用JavaScript 型付き配列イテレーターとジェネレーターリソース管理国際化JavaScript モジュール中級編Advanced JavaScript objectsAsynchronous JavaScriptClient-side web APIs言語概要JavaScr
昨年 に引き続き、2017年のJavaScriptの動向を振り返ります。 2017年の12ヶ月間に獲得した GitHub のスター数からプロジェクトを定量的に評価し、JavaScript ベスト・オブ・ザ・イヤー 2017 を決定します。 本サイトに掲載したチャートは、2017年の12か月間にGitHubでカウントされたスター数をプロジェクト別に比較したものです。分析対象のプロジェクトは Best of JS から収集したものです。 Best of JS では、Webテクノロジに関連するベストプロジェクトをまとめています。
webpackに引き続き、Railsが推してるフロントパッケージマネージャのyarnを調べてみました。npmも慣れてきたんで変えるのやだなー、と思ってたのですが互換性高くて移行しやすいし、動作も速くていい感じです。 概要 yarn = フロント(js)のパッケージマネージャ Facebook発、オープンソース、BSDライセンス npmと互換性がある npmと同じpackage.json, node_modules/で構成される コマンドも似ている バージョンの厳密な管理ができる package.jsonでバージョンそのものではなく、許容するバージョンの範囲を指定する 実際にインストールされた際のバージョンはyarn.lockに記録され、別マシンで再現可能になる npmに比べて高速に動作する 導入 Homebrewあるいはnpmでインストールできる。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く