タグ

javascriptに関するel-condorのブックマーク (12)

  • JavaScriptで文字数を数えるのはそんなに簡単ではない - Qiita

    はじめに JavaScriptにて文字数をカウントする方法に関する記事をいくつか目にする機会があり、今回実際に記事を参考に調べてみました。 簡単そうに見えて意外と難しいです。 String.length Googleなどで「JavaScript 文字数 カウント」とかで検索すると真っ先に出る方法です。 MDN公式ではString.lengthに関して以下のように説明されています。 length プロパティは String オブジェクトの文字列長を UTF-16 コードユニットの数で表します。 length は、 string インスタンスの読み取り専用データプロパティです。 UTF-16 コードユニット ざっくりと説明するならUnicodeで割り当てられた番号をUTF-16 という文字コード方式で割り当てられた各文字に対応するIDを指します。 難しい単語がいくつか出てきているので1つずつか

    JavaScriptで文字数を数えるのはそんなに簡単ではない - Qiita
    el-condor
    el-condor 2022/09/28
    抑も一般に、プログラムで「文字数」を数えようとするのは、処理系のマメなサポートなしには大変だよね、というのは旧世代の考えなんだろうか。
  • 【JavaScript】実数から整数への変換に parseInt() を使ってはいけない2つの理由🙅‍♀️ - Qiita

    背景(誰のための記事?) JavaScriptプログラマのみなさまこんにちは。 最近のお仕事の傾向として、マイクロサービス化といいいますか、オブジェクト指向の延長といいますか、MVVM化といいますか、下回りは速度&効率重視でC++で構築し、中間は保守(メンテ)&書きやすさ+ちょっぴり速度も重視で node.js(JavaScript)、上層のUIはなるべく広範囲で使えるように考慮して HTMLCSS 、という3層構造 ・上層:HTML + CSS ・中層:node.js(JavaScript) ・下層:C++ が流行っていまして、今回の事件は中層の node.js スクリプトの部分で発生した問題でした。しかも、下層で生成された巨大なデータを中層で処理し、上層で表示しようとするとある条件で遅延が発生し、表示がカクつくという問題で、その「ある条件」が長期間に渡って特定できない、、、といった難

    【JavaScript】実数から整数への変換に parseInt() を使ってはいけない2つの理由🙅‍♀️ - Qiita
    el-condor
    el-condor 2022/01/08
    寧ろこの方法を使おうと思った理由が知りたい。
  • Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch

    この記事は Node.js Advent Calendar の 11 日目の記事です。 qiita.com Web API と Node.js ES2015 以前の Node.js は Web Standard な API の中で足りないものを自分で補う形で進化を続けてきた。 Callback や Event 主体での非同期処理や Common JS な形でロードできる独自のモジュールの仕組みがその筆頭だと思う。ただ逆に Web Standard な API が流行ると今度はそれに追従していかないといけなくなってきた。 ES2015 以後に流行ったものといえば、 Promise 主体での非同期処理であり、 async-await での処理だと思う。また、 ES Modules の台頭もあり、今日では Node.js でも普通に呼び出すことが可能になった。 今ではどちらも Node.js で

    Node.js や deno に Web Standard な API をなんでも取り入れるのが良いことなのかについて - from scratch
    el-condor
    el-condor 2021/12/14
    nodejsとかの最大のメリットをブラウザとほぼ同等のツールセットが使えることにあると考えるなら実装すべき、というだけの話では。個人的には、それ以外の理由でnodejsを選択する理由は思いつかないのだが。
  • 騙されるな。JavaScript の function は関数じゃない。コンストラクタだ。 - Qiita

    といった書き方を目にしたことがあると思います。また、普段から「関数」として使っている人も多いと思います。 しかし、結論から言うと、JavaScript の function は普通の「関数」ではなく「コンストラクタ」です。JavaScriptの構文・キーワードに騙されてはいけません。(私自身、少し勘違いをしていて、以前書いた記事(JavaScript初心者にはfunctionよりも、まずアロー関数を教えるべき)では function は「メソッド」だと主張していました。) 「newができるからコンストラクタって言いたいだけなんでしょう」と思った方、とりあえずブラウザバックしようとする手を止めて最後までお読みください。 function を「関数」として使用すると、状況によってはパフォーマンスに影響する可能性があります(若干誇張表現です。最適化の度合いによります)。 以下、function

    騙されるな。JavaScript の function は関数じゃない。コンストラクタだ。 - Qiita
    el-condor
    el-condor 2019/03/20
    JS怖い
  • JavaScriptの { } を理解する - Qiita

    結果はどうなったでしょうか。 自分が今使っているGoogle Chromeだとこうなりました。 結果は{a: 10}というオブジェクトです。まあ、これは当然ですね。3 + 5と入力すれば実行されて8が返ってくるのですから、{a: 10}というオブジェクトリテラルを書けば{a: 10}というオブジェクトが作られるのは当然です。 ……。 ここで、一部の人は「おいふざけんなよ」と思っているかもしれません。というのも、この例は環境によっては違う結果になるのです。具体的には、Chrome以外2のブラウザのREPL(FirefoxやEdgeなど)が該当します。あと、ts-nodeのREPLも該当するらしいです。これらの環境では、結果は{a: 10}ではなく次のようになります。 オブジェクトを作ったはずなのに結果が10とか意味不明ですね。そもそも、こんな簡単なプログラムで結果が全然違うとか、JavaSc

    JavaScriptの { } を理解する - Qiita
    el-condor
    el-condor 2018/11/14
    JavaScript難しい
  • 大量のテキストを食っても速い Markdown Editor 作った - mizchi's blog

    もう人生で何個目かわからない markdown エディタ作った。が、今回のは結構気に入っている。 https://markdown-buffer.netlify.com/ で遊べる。 用途としては、GitHub か Qiita か はてなブログかわからないが、なにか書こうと思ったときに、どのサービスも中途半端に重いので、とりあえずのバッファが必要、という感じで作った。なので速度重視。 ブラウザのストレージで永続化してる。オフラインで動く。できるだけエディタとしてはスコープを大きくせず、単に編集バッファ(textarea)でしかない、というのを意識している。 結構頑張って作り込んでしまった https://nedi.app が色々肥大化してしまっていて入力時にラグを感じるので、編集体験を見つめ直す自戒もある。 機能 数式対応 コードハイライト対応 バックグラウンドで自動保存 改行を br に

    大量のテキストを食っても速い Markdown Editor 作った - mizchi's blog
    el-condor
    el-condor 2018/10/24
    なるほど参考になる。
  • ginza.rbでstimulusについて紹介した - おもしろwebサービス開発日記

    今日のginza.rbはBasecamp製のjsフレームーワーク、stimulusがテーマでした。 Ginza.rb 第64回 Stimulusは新たな刺激となりうるか? - Ginza.rb | Doorkeeper 資料はこちら 所感 資料の中にも書いていますが、「サーバサイドな人が片手間で書いているjsをもうちょっといい感じにしたい、しかしvue.jsやreactなどに手を出すほどの余裕がない」というケースだとかなり良い感じで使えるのかな、という印象です。フロントエンド専任の人がいるようなプロジェクトでは特に必要なさそう。 DHHはrailsを「一人でアプリケーションを素早く作るのにとても便利なフレームワーク」として捉えている(出典どこだったか忘れました><)のですが、stimulusやturbolinksにもそれが色濃く反映されているように思えます。DHHの思想のうち、「これはちょ

    ginza.rbでstimulusについて紹介した - おもしろwebサービス開発日記
    el-condor
    el-condor 2018/10/17
    サーバサイド中心の開発体制でJSをうまく捌くためのフレームワークという話/そういえば、今は亡きRJSの頃からrailsにはHTMLの生成はサーバサイドでやるべきという思想があったのでした
  • Sequelizeで論理削除とUNIQUE制約の両立 - Qiita

    はじめに 近年、テーブル設計で論理削除を採用することが増えているのではと思っています。 それは、以下の様な事情が増えていると思うからです。 Web APIのクライアントとしてネイティブアプリ・ハイブリッドアプリを開発している クライアント側のデータ更新は、基的にサーバから取得したデータを元に行っている(サーバが正、クライアントが副 ) そのうちの「削除」についても、サーバから取得したデータの削除フラグを元に行っている こういう事情のもとでは、サーバ側のDBで論理削除を採用するのが一般的なのかなと思います。 論理削除とUNIQUE制約について ※ 以下はMySQLでの経験を元にした話で、他のDBでは当てはまらない話があるかも知れません 論理削除のためのテーブル設計でよく 「emailカラムにUNIQUE制約かけたいが、削除されたユーザに関しては無視したい。削除されているのなら、同じemai

    Sequelizeで論理削除とUNIQUE制約の両立 - Qiita
    el-condor
    el-condor 2018/07/13
    interoperability #とは
  • 5分でわかるかもしれないJSエンジンの歴史

    5分でわかるかもしれない(わからない)JSエンジンの歴史です

    5分でわかるかもしれないJSエンジンの歴史
    el-condor
    el-condor 2018/06/27
    こうしてみると、Ruby(MRI)と同じような進化の経路を辿ってるんだな。ASTインタプリタ→bytecodeとかな。興味深い。
  • Can (a== 1 && a ==2 && a==3) ever evaluate to true?

    Moderator note: Please resist the urge to edit the code or remove this notice. The pattern of whitespace may be part of the question and therefore should not be tampered with unnecessarily. If you are in the "whitespace is insignificant" camp, you should be able to accept the code as is. Is it ever possible that (a== 1 && a ==2 && a==3) could evaluate to true in JavaScript? This is an interview qu

    Can (a== 1 && a ==2 && a==3) ever evaluate to true?
    el-condor
    el-condor 2018/01/17
    2番目の、ハングル半角スペースを用いた解答笑う。識別子の一部になるんだねえ。
  • 軽量なのに強力!jQueryそっくりなJavaScriptライブラリ「Umbrella」とは?

    オープンソースのjQueryライブラリはWeb開発の現場において何年もの間不動の地位についていました。 JavaScriptのことを深く理解していなくとも、オブジェクト指向で分かりやすい構文、豊富な外部プラグイン、加えてAjaxなどの非同期通信も簡単に扱うことができたのが、その人気の理由です。 JavaScriptを用いた開発現場ではいまもなお人気のjQueryですが、ここに来て新たなJavaScriptライブラリが注目を集めています。 それが、Umbrellaです。 UmbrellaはjQueryと同様に完全オープンソースで、jQueryと同じく要素セレクタを扱うことができたり、DOM操作ができたり、Ajaxリクエストを行うことができます。 また、UmbrellaはjQueryと若干異なる文法や関数の呼び出し方を採用していますが、基的に残りの部分はほとんどjQueryと一緒です。 それ

    軽量なのに強力!jQueryそっくりなJavaScriptライブラリ「Umbrella」とは?
    el-condor
    el-condor 2017/03/17
    似てるけど違う、って移行に結構手こずる奴ではないの
  • GitHub - chute/turbine: Relay-like REST-friendly Immutable-based React data library

    Dismiss Join GitHub today GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together. Sign up

    GitHub - chute/turbine: Relay-like REST-friendly Immutable-based React data library
    el-condor
    el-condor 2015/12/22
    その昔、view層にVelocityを使ったMVCフレームワークがありましてな…(老害風味)
  • 1