タグ

JavaScriptに関するKenji_sのブックマーク (213)

  • GitHub - amiranagram/inertia-codeigniter-4

  • 高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?

    はじめに 記事では、ユーザーインターフェイスを構築するためのJavaScriptフレームワークのひとつ「Svelte(スベルト)」についてご紹介します。 Webフロントエンドの領域は年々大きくなっており、読者の皆さまの中でもReactVueといったフレームワークを使ったことがある方が多いものと思います。もしかしたら、Svelteの名前もどこかでご覧になり、気になっている方もいるかもしれません。 Svelteは、そのアプローチの新しさから注目されはじめています。 JavaScript のライブラリに関する大規模調査「State of JS 2020」で「最も愛されているWebフレームワーク」「もっとも開発者の満足度の高いフレームワーク」に選ばれたことでも話題となりました。 そこで記事では、ReactVueに少しでも触れたことがある方を想定して、それらと比較する形で、Svelteの特徴

    高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?
  • SortableJS

    new Sortable(example2Left, { group: 'shared', // set both lists to same group animation: 150 }); new Sortable(example2Right, { group: 'shared', animation: 150 });

  • JavaScriptの非同期処理をじっくり理解する (1) 実行モデルとタスクキュー

    対象読者と目的 非同期処理の実装方法は知っているが、仕組みを詳しく知らないのでベストプラクティスがわからないときがある 実行順序の保証がよくわからないので自信をもってデプロイできない変更がある より詳しい仕組みを理解することでより計画的な実装をできるようになりたい という動機で書かれた記事です。同様の課題を抱える人を対象読者として想定しています。 目次 実行モデルとタスクキュー Promise async/await AbortSignal, Event, Async Context WHATWG Streams / Node.js Streams (執筆中) 未定 入門記事へのリンク プロミスの使用 - JavaScript | MDN Promise, async/await (現代の JavaScript チュートリアル) JSの初心者にPromiseとasync/awaitの使い方

    JavaScriptの非同期処理をじっくり理解する (1) 実行モデルとタスクキュー
  • 読んで学ぶTypeScript | TypeScript入門『サバイバルTypeScript』

    章では、TypeScriptの言語機能をひとつひとつ解説します。解説の範囲はTypeScriptに留まらず、JavaScriptについても必要なものを解説します。これは、TypeScript学習者がJavaScriptも並行して学ぶことが多いためです。 どの機能がTypeScriptのものか、JavaScriptのものかがわかるように配慮しています。JavaScriptの機能については「JavaScriptの〜は」などと、TypeScriptの機能については「TypeScriptの〜は」などのように言語名を文中に記すようにしています。言語名が随所に出てくるため、読んでいてくどいと思われるかもしれませんが、どの機能がどちらの言語のものかを明確に理解しておくことは重要なので、ご辛抱いただければ幸いです。 章の流れは、コード上の小さいパーツから大きいパーツに行くように構成しています。値や変数

    読んで学ぶTypeScript | TypeScript入門『サバイバルTypeScript』
  • Denoとはなにか - 実際につかってみる - Qiita

    ↑かわいい Deno(ディーノ)という名前について、聞いたことがありますでしょうか。私も最近まで知りませんでしたが、実はv1.0がリリースされたのが2020/5/13とごく最近のことです。開発自体は2年前から行われておりましたが、結構新しめの技術です。 その証拠(?)にDenoでググると担々麺ばっかりでてきます。(2019/5/18現在) 結局Denoってなんなの? Denoは、Node.jsの製作者であるRyan Dahlによって作られた、新しいJS/TSランタイムです。すっごい雑に説明すると、Node.jsのイケてなかったところを改良したものがDenoになります。Denoって文字を並べ替えるとNodeになりますね。 Denoがつくられた背景 DenoはJSConf EU 2018でのRyan Dahlによる講演「Node.jsに関する10の反省点」において発表されました。 10 Thi

    Denoとはなにか - 実際につかってみる - Qiita
    Kenji_s
    Kenji_s 2021/07/17
  • JavaScript Primer - 迷わないための入門書 #jsprimer

    JavaScript Primer 迷わないための入門書 Tweet Watch Star Twitterのハッシュタグ: #jsprimer これからJavaScriptを学びたい人が、ECMAScript 2015以降をベースにして一からJavaScriptを学べる書籍です。 プログラミングをやったことがあるが、今のJavaScriptがよくわからないという人が、 今のJavaScriptアプリケーションを読み書きできるように書かれています。 初めてのプログラミング言語としてJavaScriptを学ぶ人は、まずは「はじめに」から読んでみてください。 書籍版 このウェブサイトの内容はアスキードワンゴから書籍として出版されています。 書籍版の内容はウェブサイト版と同一ですが、として読めるように最適化されています。 書籍版は次のサイトから購入できます。 Amazon 達人出版会(電子書籍

    JavaScript Primer - 迷わないための入門書 #jsprimer
  • JavaScript: Everything From ES2016 to ES2019

    AlbertoM Posted on Jan 5, 2020 • Updated on Mar 8, 2020 • Originally published at inspiredwebdev.com Hi, I am Alberto Montalesi, a full-stack self-taught developer. I create practical JavaScript tutorials and courses on my website inspiredwebdev.com to inspire other developers to grow and build the career that they want. JavaScript is a language in constant evolution and in the past few years, man

    JavaScript: Everything From ES2016 to ES2019
  • JavaScriptでインジェクションリスクがある関数/機能など

    (Last Updated On: 2018年8月9日)Webブラウザに対するJavaScriptコードのインジェクションは サーバー側のコードが原因(サーバー側のPHPRubyPythonJavaScriptが原因) クライアント側のコードが原因(クライアント側のJavaScriptが原因) サーバーとクライアント(上記の両方) で起きる可能性があります。ここでは主にクライアント側が関係するケースで注意しなければならない箇所を紹介します。 どこが危険なのか? ブラウザ上のJavaScriptの場合、ECMAScriptの基として実装されている機能、DOM機能として実装されている機能があります。更にこの他にもHTMLCSS機能もあり複雑です。SVGなどこの他の標準にもJavaScriptが記述できるモノがあります。 JavaScriptを実行可能となる部分へユーザー入力データを出

    JavaScriptでインジェクションリスクがある関数/機能など
  • e.targetの扱いには注意しよう - Qiita

    Javascript(特にjQuery)でイベントハンドラとか、リスナを使うときに何も考えずにe.targetを使うとハマるよって話。 ES6が浸透して来て、アロー関数でリスナなどの関数を書く頻度が増えてきたことだと思います。 その関数内で、要素を取得してdata-idみたいな情報を取得したいなんてことはよくありますね。 そんなとき、以前はthisを使っていればよかったのですが、アロー関数ではthisはイベントの起こった要素を指さないのでイベントの関数の引数から頑張って持ってくる必要があります。

    e.targetの扱いには注意しよう - Qiita
  • 5000人に聞いた、2018年最先端のフロントエンド開発者が使ってるツールはこれだ - Qiita

    先日Launching the Front-End Tooling Survey 2018というフロントエンドツールのアンケート調査を和訳しましたが、その結果が発表されました。 以下はThe Front-End Tooling Survey 2018 - Resultsの日語訳です。 The Front-End Tooling Survey 2018 - Results 今年3月のFront-End Tooling Surveyに、5097人のフロントエンド開発者から回答をいただきました。 参加された皆さんには感謝致します。 毎回、調査の目標は単純です。 フロントエンドエンジニアが現在仕事で使用しているツールについて光を当てたいのです。 どのようなツールが使われているのか、自分の知識や経験だけで判断してしまうのは早計です。 以下の結果は、フロントエンドツールの現在の動向を把握するのに役立

    5000人に聞いた、2018年最先端のフロントエンド開発者が使ってるツールはこれだ - Qiita
  • JavaScriptユニットテストの理想と現実

    Talk at 関西Node学園 梅田キャンパス 1時限目 https://nodejs.connpass.com/event/82614/

    JavaScriptユニットテストの理想と現実
  • Chart

    ChartThe Chart makes your data pop, and it is easy to use. It provides you with multiple charts like Bar, Column, Line, and more.

    Chart
  • ECMAScript 2015以降のJavaScriptの`this`を理解する

    この記事はJavaScriptの入門書として書いているjs-primerのthisに関する部分をベースにしています。 またjs-primerでは書けなかった現在時点(2018年1月1日)でのブラウザの挙動についてを加えたものです。 次の場所にjs-primer版(書籍版)のthisについての解説があります。 この記事と違って実際にコードを実行しながら読めるので、学習ソースとしては書籍版を推奨します。 書籍版: 関数とthis · JavaScriptの入門書 #jsprimer また、バグ報告やPRも直接リポジトリにして問題ありません。 asciidwango/js-primer: JavaScriptの入門書 おかしい場所を選択した状態で右下にある”Bug Report”ボタンを押せば、簡単にtypoとかのバグを報告できます。(PRでも歓迎) 前置きはこの辺までで、ここから編。 この記

    ECMAScript 2015以降のJavaScriptの`this`を理解する
  • イマドキのJavaScriptの書き方2018

    PySpa統合思念体です。これからJavaScriptを覚えるなら、「この書き方はもう覚えなくていい」(よりよい代替がある)というものを集めてみました。 ES6以降の難しさは、旧来の書き方にプラスが増えただけではなく、大量の「旧来の書き方は間違いを誘発しやすいから非推奨」というものを作り出した点にあります。5年前、10年前のやウェブがあまり役に立たちません。なお、書き方が複数あるものは、好き嫌いは当然あると思いますが、あえて過激に1つに絞っているところもあります。なお、これはこれから新規に学ぶ人が、過去のドキュメントやコードを見た時に古い情報を選別するためのまとめです。残念ながら、今時の書き方のみで構成された書籍などが存在しないからです。 たぶん明示的に書いていても読み飛ばす人はいると思いますが、すでに書いている人向けではありません。これから書くコードをこのスタイルにしていくのは別にいい

    イマドキのJavaScriptの書き方2018
  • TestCafeでブラウザの自動テスト(E2Eテスト)

    TestCafeという自動テストフレームワーク(いわゆるE2Eテストフレームワークジャンルとしておきます)を試してみました。 TestCafeの特徴としては、Seleniumを使っていないこと、設定ファイルなしで利用できる点です。 Seleniumを使ったテストフレームワークとしては、Protractor、testium、WebdriverIOなどがあります。 (Seleniumを使わない他のテストフレームワークだとNightmareなど) Seleniumを使わずにどうやって自動的にブラウザを操作するかというと、中継サーバーを起動してそこにテストコードなどを追加して動かすことができるSelenium RC(1)方式に近いものだと思います。 同名のウェブサービス/クライアントアプリも出していて、こちらはSelenium IDEのようにGUIで操作して記録したものを再生などができます。 なぜ

    TestCafeでブラウザの自動テスト(E2Eテスト)
  • VueをSSRに乗せると容易にXSSを生み出す場合がある件について - Qiita

    はじめに 最近Vue.jsを頻繁に使用するのですが、他のSSR(サーバーサイドレンダリング)の仕組みと組み合わせる場合、容易にXSSを生み出してしまうケースが存在するので、注意喚起も兼ねて事例を紹介させていただきます。 9月7日 追記を追記しました 前提 サーバーサイドで動的に要素をレンダリングするシステムとVue.jsを組み合わせた場合 この記事はrailsのSSRとの組み合わせで解説しますが、プレーンなPHP等、動的にHTMLをレンダリングシステムとの組み合わせでも発生します。 サンプルコード まず、こちらのコードをご覧ください。 user.erb <div id="app"> <div class="user"> <%= @user.name %> </div> <button v-on:click="registerFavorite" data-user-id="<%= @user

    VueをSSRに乗せると容易にXSSを生み出す場合がある件について - Qiita
  • Moment.jsを使う - Qiita

    去年にこれ(日付フォーマットなど 日付系処理) 書いたんだけど(思いの外ストックされた)、 これはライブラリ使用承認プロセスがとても難儀な環境の時書いたもので、 もしそんな悲しい環境でないなら先人たちの素晴らしいライブラリを使ったほうがいい。 ライブラリを使ういいところは、コーダの独自実装になりにくいし、他のプロジェクトでも知見が使い回しできるところだと思う。 ということでMoment.jsの使い方について書いておく。 GitHubにおいて、現在(2015/1)日付を処理するライブラリの中で多分一番Starがついてる日付系のライブラリ。人気が有るということは正義っぽい。 Qiitaにもたくさん記事ある。 公式ドキュメントはこちら。 http://momentjs.com/docs/ Moment.jsはJavaScriptのDateオブジェクトをラップするオブジェクトを生成して、そのオブジ

    Moment.jsを使う - Qiita
  • JavaScript の Date は罠が多すぎる - Qiita

    JavaScript で日付・時間を扱っていて、次から次へと罠にはまったので、あとから来る人のために書き留めておく。 Date.parse が返すのは Date でなく整数 Date.parse は、世界協定時 1970 年 1 月 1 日 00:00:00 からの経過時間をミリ秒単位で返す。 Date を得るには new Date に渡す。 new Date に直接文字列渡しても同じ挙動なので、こちらのが簡潔。 msec = Date.parse("Thu, 06 Sep 2012 00:00:00 +0900"); // 1346857200000 date = new Date(msec); // Date date = new Date("Thu, 06 Sep 2012 00:00:00 +0900"); // Date

    JavaScript の Date は罠が多すぎる - Qiita
  • 2017年JavaScriptのテスト概論 | POSTD

    稿は、JavaScriptのテストについて最も重要な根拠、用語、ツール、アプローチなどの知識を身に着けることを目的とした簡略版ガイドブックです。稿で検討する数々の側面に関する最新の秀逸な記事も紹介しつつ、私たちが経験的に得たことも多少付け加えたいと思います。 Facebookによるテスト用フレームワークであるJestのロゴをご覧ください。 見てお分かりのように、このフレームワークは「苦痛のない」JavaScriptのテストをスローガンに掲げています。しかし、 “次のように言う人” もいます。 苦痛のないテストなんてあり得ない。 実際、Facebookはこのスローガンを掲げるだけの素晴らしい理由があります。一般的にJSのデベロッパは Webサイトのテストにあまり満足していません 。JSのテストには制限があり、実装が難しく、低速である傾向があります。 一方、正しい戦略を立てて適切にツールを

    2017年JavaScriptのテスト概論 | POSTD