タグ

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

タグの絞り込みを解除

JavaScriptに関するlazexのブックマーク (179)

  • JavaScript配列の空要素の話 - NullPointer's

    gfx.hatenablog.com 配列の空要素の問題ですね。容量は確保されてるが値が(undefinedさえも)入っていない状態。 $ node -p -e "new Array(3)" [ <3 empty items> ] この配列のlengthは3になるのだが、forEachなどのイテレーション関数では空要素は列挙されない。 $ node -p -e "new Array(3).length" 3 $ node -e "new Array(3).forEach(i => console.log(i))" # 何も出力されない リンク先ではArray.fromやスプレッド演算子を使って、undefinedをセットするコードが紹介されているが、自分はこういうときはfillを使っている。 $ node -p -e "new Array(2).fill()" [ undefined, u

    JavaScript配列の空要素の話 - NullPointer's
    lazex
    lazex 2018/01/30
    fillしてmapするならArray.from使ってまとめてやりたい→「Array.from(Array(10), (e,i) => i)」。メソッドチェーンが好きなのかな
  • なぜ JavaScript か? | TechWave(テックウェーブ)

    1990年代初頭から記者としてまた起業家としてITスタートアップ業界のハードウェアからソフトウェアの事業創出に関わる。シリコンバレーやEU等でのスタートアップを経験。日ではネットエイジ等に所属、大手企業の新規事業創出に協力。ブログやSNSLINEなどの誕生から普及成長までを最前線で見てきた生き字引として注目される。通信キャリアのニュースポータルの創業デスクとして数億PV事業に。世界最大IT系メディア(スペイン)の元日編集長、World Innovation Lab(WiL)などを経て、現在、スタートアップ支援側の取り組みに注力中。 シリコンバレー流のプログラミング教室の記事「3か月間103万円、シリコンバレー式ブートキャンプ「コードクリサリス」日初上陸」は大きな反響を呼びました。手順を学ぶ日のプログラミング教室とは全く違う概念と方法。そして集中的に鍛錬を積む、いわば特訓とも取れる

    なぜ JavaScript か? | TechWave(テックウェーブ)
    lazex
    lazex 2017/07/05
    コンパイル不要なスクリプト言語は高級じゃないの?
  • WanaKana.js

    lazex
    lazex 2017/06/30
    IMEで十分と思う。と思ったけど日本語圏以外の人や日本語設定されてないキーボードを使うときには便利そう。漢字変換もあれば完璧だけど
  • javascriptのキーボードイベントで質問があります。

    lazex
    lazex 2017/06/30
    keyCode は deprecated だというのに。回答者皆使ってるのか。["a","b","c"].includes(event.key) && console.log(1) でいいと思う
  • JavaScript 関数の練習問題 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    JavaScript 関数の練習問題 - Qiita
    lazex
    lazex 2017/06/21
    2番目の関数名がなんでsumなんだろう。流れ的にはoneでは
  • You Don't Know JS 読書メモ [ 読書中、随時更新 ] - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? You Don't Know JS 読書メモ ※ このメモでは JavaScript のことを JS と書く。 YDKJS を読み始めた。 勉強しながら、自分の頭の混乱を整理するための完全な個人メモ。 間違っていること多々ありだから参考にしないように。 ただ、公開しながらメモを書くと自分自身がよりまともに整理が出来る気がするのであえて公開する。 このメモはで書いて理解したことと、俺の過去の知識をつなげつつ、ごちゃ混ぜにして書いているので、すべてがに書いてあることと思わないように。 すべて自分理解の為なので、あなたの為になると思って参

    You Don't Know JS 読書メモ [ 読書中、随時更新 ] - Qiita
    lazex
    lazex 2017/05/30
    読んでないけど著者の気持ちわかるかも。クラスベースじゃないのに無理矢理クラスベースのことやろうしてjsつかえねーなとか言ってる馬鹿な人が多すぎる。自分に合わせろじゃなくてjs使うならjsに合わせろよと
  • 2017年度版 細かすぎて伝わらないJavaScriptの速度の話 - Qiita

    概要 コードを書いていると誰もが気になってくる「どっちのほうがパフォーマンスに優れているの?」で、眠れない日々を過ごす人達のために、比較結果をまとめてみました。 実行環境 OS: macOS Sierra 10.12.5 Chrome: 58.0.3029.110 (64-bit) Safari: 10.1.1 計測方法 10 回実行した結果の平均値です。 比較 シングルクオート VS ダブルクオート コード start = () => { const retryCount = 1000000; const startTime = new Date(); for (let i = 0; i < retryCount; i = i + 1) { /* ダブルクオート const text = "abcde" + "fghij" + "klmno" + "pqrst" + "uvwxy" +

    2017年度版 細かすぎて伝わらないJavaScriptの速度の話 - Qiita
    lazex
    lazex 2017/05/30
    chromeはすぐに変わるから明らかに遅い原因があるとかじゃないとチューニングしてもムダな印象。(x+1)|0 は "use asm" とかした時の話じゃないの?
  • ES/JavaScriptのthisとアロー演算子について知っておくべきこと - それマグで!

    this. この便利でハマりどころの多い変数 Array.forEach / map 系 のthisArg が安定しない。 this 変数の紹介 this 変数の例 apply , call window オブジェクト コールバック イベントハンドラ Array.forEach 個人的な結論 this はできるだけ避ける 調べたキッカケは Array.forEach arr = ["A","B","C"] arr.forEach( function ( x ) { console.log ( this ) } ) このthisとして this => [“A”,“B”,“C”] を期待したわけです。 でも、this = window arr = ["A","B","C"] arr.forEach( function ( x ) { console.log ( this ) } ) //=>

    ES/JavaScriptのthisとアロー演算子について知っておくべきこと - それマグで!
    lazex
    lazex 2017/05/29
    jsの仕様がわかってないとしか。this使うなじゃなくてjs使うのやめれば?って思った
  • プロトタイプベースのオブジェクト指向言語が広く使われていない理由は?

    プロトタイプベースのオブジェクト指向言語は私の知る限り、JavaScriptぐらいしか広く使われているものはないんじゃないかと思います。 しかもJavaScriptもES6からclass構文というシンタックスシュガーを導入しましたし、altJSの一種のTypeScriptも広く使われていますし。 プロトタイプベースという概念を勉強している時に、「この概念、クラスベースと違って難しすぎね?」という感情を抱いていて、今もそれは変わらないです。 ただ勉強を進めているうちに、実はプロトタイプベースの方が概念としてはすごくシンプルで柔軟性があるのではないかという思いも募ってきました。 でも明らかにみんなプロトタイプベースでプログラミングをしたがっていませんよね?それどころかプロトタイプベースという概念を理解していない、しようともしていない人が多いように思います。JavaScriptの文脈で「クラスを

    プロトタイプベースのオブジェクト指向言語が広く使われていない理由は?
    lazex
    lazex 2017/05/26
    もっとプロトタイプベースが流行って欲しい。JSにクラスベースな考え持ち込みたがる人には「TypeScriptにでも行ってください」といいたい。
  • JavaScript のもう一つの「関数名」 —— name プロパティ - Qiita

    「関数名」と name プロパティ JavaScript において「関数名」あるいは「メソッド名」というと何を指すでしょうか。 関数オブジェクトを参照している変数名やプロパティ名を指すことが多いと思います。 しかし、もう一つ「関数の名前」と言える物として、関数オブジェクトの name プロパティがあります。 これは関数オブジェクトの生成時に決定される、文字列のプロパティです。 function foo() { // do something } let bar = foo let baz = foo let qux = [foo, foo] console.log( foo.name ) // 出力 -> "foo" console.log( bar.name ) // 出力 -> "foo" console.log( baz.name ) // 出力 -> "foo" console.l

    JavaScript のもう一つの「関数名」 —— name プロパティ - Qiita
    lazex
    lazex 2017/05/21
    evalで名前入れてるの見て、definePropertyすればいいのに、って思ったら最後で書いてた
  • GitHub - prettier/prettier: Prettier is an opinionated code formatter.

    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 - prettier/prettier: Prettier is an opinionated code formatter.
  • JavaScript - 式の展開の注意点 - 浮動小数点数、数値計算、正確性、誤差 - ( @h_okumura 、 @shora_kujira16 ) Haruhiko Okumura さん、しょラーさんのツイートより | Kamimura's blog

    JavaScript - 式の展開の注意点 - 浮動小数点数、数値計算、正確性、誤差 - ( @h_okumura 、 @shora_kujira16 ) Haruhiko Okumura さん、しょラーさんのツイートより

    JavaScript - 式の展開の注意点 - 浮動小数点数、数値計算、正確性、誤差 - ( @h_okumura 、 @shora_kujira16 ) Haruhiko Okumura さん、しょラーさんのツイートより | Kamimura's blog
    lazex
    lazex 2017/04/19
    0.1+0.2ですら0.3じゃないからねー。小数を比較するときは適当にtoPrecisionしないと
  • JavaScript で記号プログラミング - Qiita

    JavaScript で記号プログラミング JavaScript も他の言語と同様に記号($=_-+~[]{}()*/<!\;"',.)のみを使ったプログラミングが可能です。 以下に console.log("Hello World") を実行するための手順を説明します。 コードに出てくる $0 や $a などの変数は、読者への説明のために可読性のある形で記述しています。 もちろん、これらの変数は記号のみを使った形に書き下すことが可能です。 まずは記号から数値を導出します。 $0 = +[]; // 0 (-[] or +"") でも可能 $1 = -~[]; // 1 $2 = $1+$1; // 2 (1+1) $3 = $2+$1; // 3 (2+1) $4 = $3+$1; // 4 (3+1) $5 = $4+$1; // 5 (4+1) $6 = $3<<$1; // 6 (

    JavaScript で記号プログラミング - Qiita
    lazex
    lazex 2017/04/19
    JavaScript は 「!+()[]」 の6文字だけあれば十分
  • nvm(Node Version Manager)でWindowsにNode.jsをインストールする - JavaScript勉強会

    WindowsにNode.jsをインストールするとき、Node.jsのバージョン管理ツールとして「nodist」を使ってみました。 「nvm」(Node Version Manager)というツールもあるので、nvmの使い方も調べてみました。 nodistの使い方 nvmとは? nvmw nvm-windows nvm-windowsのインストール nvm-windowsインストーラーのダウンロード nvm-windowsのインストール nvm-windowsの動作確認 再インストール nvmでNode.jsをインストール nvmのコマンド Node.js 32ビット版を指定する方法 まとめ nodistの使い方 nodistによるNode.jsのバージョン管理は、こちらを参照してください。 jsstudy.hatenablog.com nvmとは? Windows ではじめてみる Nod

    nvm(Node Version Manager)でWindowsにNode.jsをインストールする - JavaScript勉強会
    lazex
    lazex 2017/04/17
    nvmってまだ生きてたのか。naveは死んだ?
  • Javascriptでよく使う処理をスニペットにしてみた - Qiita

    SnippetsLabにいつも使う関数まとめるついでにQiitaにもメモっとく。 汎用関数 Htmlタグを除去 /** * Htmlタグを除去 * @param {string} str Htmlタグが含まれた文字列(<h1>サンプル文字列</h1>) * @returns {string} Htmlタグ除去された文字列(サンプル文字列) */ const removeHtmlTag = function (str) { return String(str).replace(/<("[^"]*"|'[^']*'|[^'">])*>/g, ''); }; /** * URLをパースしてGET値のオブジェクトにする * @returns {{}} GET値のオブジェクトです。 */ const purseQuery = function () { const result = {}; cons

    Javascriptでよく使う処理をスニペットにしてみた - Qiita
    lazex
    lazex 2017/04/08
    ほぼ使うことないなー。あともっと短くかけそうってのがいろいろ
  • JavaScriptの関数で何ができるのか、もう一度考える

    関数(Function)は、ほぼ全ての現代的なプログラミング言語が備えている、プログラミングにおける基的な構成要素です。もちろんJavaScriptも関数を備えています。 関数はシンプルで強力です。ですが、それゆえに多くの人を混乱させることもあります。私が大学のプログラミング実習のティーチングアシスタントを担当していたときも、「関数」でつまずく学生が少なくありませんでした。 関数は普段何気なく呼吸をするように使っているものです。ですが、改めて、関数とは何か、何ができるのか、ということを考え出すと、意外と難しいことに気がつきます。そこで、JavaScriptにおける関数について、いったい何ができるのか、もう一度ゆっくり考え直してみることにしましょう。 関数って何ができるんだっけ 複数の命令をまとめて名前をつける 関数の最も基的な機能は、複数の命令をひとつにまとめて、名前をつけることです。

    JavaScriptの関数で何ができるのか、もう一度考える
    lazex
    lazex 2017/04/08
    配列のそれぞれの要素を単純に順番に処理するならfor-ofやforEachにしてほしい。手続き感のあるforでループ変数操作は見づらい
  • Site is undergoing maintenance

    Site will be available soon. Thank you for your patience!

    Site is undergoing maintenance
    lazex
    lazex 2017/04/03
    Web○○を調べてみればこんなのもあるの?ってくらいだからなんでもできるといっていいよ。無理なものでもPCローカルの設定さえすればカスタムスキームやExtension経由でローカルアプリと通信すれば本当になんでも
  • Riot.js 2.0 を触ってみた — まだReactで消耗しているの? - Qiita

    楽すぎてどうしよう。が最初の感触。まだ3時間しか触ってないけど、もうこれでいいや感が半端ない、深夜2時です。 Angularなのか、Reactなのか、2015年が明けても毎週のように新しいJSフレームワークが出る中で、もう正直どうでもよくなってませんか? でも、これは触って楽しいはず。 Riotって何? Riotは、公式ページに A REACT- LIKE, 2.5KB USER INTERFACE LIBRARY とあるように、Reactを意識して作られた超軽量のUIライブラリで、ビュー部分(コンポーネント)に特化しているのが特長です。Vue.jsとかとも同類です。Riot 1.0も「超軽量」という点で、一時注目を集めました。 そのRiotが、2.0で趣向を変えてJSX的なプリコンパイルの仕組みを取り入れて、ReactとPolymerのいいとこ取りのような感じになっています。ただし、次の

    Riot.js 2.0 を触ってみた — まだReactで消耗しているの? - Qiita
    lazex
    lazex 2017/03/19
    html中にjsでなくscriptタグで囲まれることで安心できる
  • ソースマップの自作は割とコワくない。 - Qiita

    「めんどくさそう」先入観で敬遠していたのですが、仕様を見たらそんなでもなかったので書き残しておきます。手っ取り早くコードを見たい方はこちらをどうぞ。 ユーザとして、ソースマップに接する機会は多いですが、AltJSを作るとかでもない限り、あまり提供側に回ることはないかもしれません。私自身、次のような疑問というか誤解を抱えたまま、深入りしなかったクチです...。 誤解1: ソースマップを作るにはASTを作る必要がある → 実際はもっとシンプル 誤解2: なんかすごいエンコード(AAAA;AACA;AACA;AACA...)がされてる → ただのBase64 よく見かけるソースマップの説明記事(というほど、記事自体ないけれど)では、「ソースを構文解析してASTを構築して...」という手順が出てくるのですが、 ソースマップにASTは必要ありません。 もちろん、実際にAltJSを作るならASTの作成

    ソースマップの自作は割とコワくない。 - Qiita
    lazex
    lazex 2017/03/19
    関わってはいけない系の領域と思ってたけど意外と簡単なものだったんだ
  • JavaScriptのES2015クラスでmixinを実装する世界一美しい方法 - Qiita

    こいつまた煽りっぽいタイトル書いてるな? 皆さんES2015のclass使ってますか? ES2015のクラス、prototypeを利用したり、{}を利用したりして、様々な書き方で実現できるクラスっぽい何かを、単一の記述でまとめた偉業は素晴らしいですよね。 でも、反面まだまだ機能が全然足りません。当に足りません。 そこで今回は足りない機能をなんとかしよう、みたいな話です。 まずは基的な継承の振り返り ES2015クラスでは、「extends」を用いることで、継承を実現することが出来ます。 class Swimmable{ swim(){ console.log("すいすいっ"); } } class Fish extends Swimmable{} const fish = new Fish(); fish.swim(); // "すいすいっ"

    JavaScriptのES2015クラスでmixinを実装する世界一美しい方法 - Qiita
    lazex
    lazex 2017/03/19
    class a extends mixin(a,b,c) {} みたいな書き方が綺麗かな。Object.assignはjsで本格的なオブジェクト指向なんてしようとするから…。基本JSON化できるデータで、その構造専用の関数をメソッドと呼んでるくらいにしとけばいいのに