はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    WWDC25

『qiita.com』

  • 人気
  • 新着
  • すべて
  • 【JavaScript】flat と map があるのに flatMap は必要なのか?【Monad】 - Qiita

    3 users

    qiita.com/silane1001

    JavaScriptの配列型にはflatMapというメソッドがある。flatMapは同じく配列のメソッドmapとflatを連続して適用したのと同じ処理を一つのメソッドで行うものである。 [0, 10, 20].map(x => [x, x + 1]).flat(); // [0, 1, 10, 11, 20, 21] [0, 10, 20].flatMap(x => [x, x + 1]); // [0, 1, 10, 11, 20, 21] これflatMap要るか?別に2回に分けて書けばよくないか?配列には他にもreverseやfilterやreduceなどたくさんのメソッドがあるのに、なぜflatとmapだけはそれらを組み合わせたflatMapという専用メソッドがあるのか? それには理由がある。なぜならflatMapは関数型プログラミングにおいてとても重要で特別な関数だからである。

    • テクノロジー
    • 2024/12/31 16:03
    • 資料
    • プログラミング
    • JavaScript
    • tips
    • 折角自宅サーバーがあるのでハッカーっぽい雰囲気を出す【Pi-hole】 - Qiita

      3 users

      qiita.com/silane1001

      この記事では Pi-hole を使って以下のような感じで自宅のネットワークの状態を確認できるようにします。うん、カッコいい!しかも実用性もちゃんとあります。 Pi-holeとは? Pi-hole は広告ブロック機能がついた DNS サーバ兼 DHCP サーバです。自宅ネットワークのルータ等についている既存の DNS サーバや DHCP サーバを置き換える形で設置することで、ネットワーク内のすべての端末に広告ブロック効果をもたらしてくれます。端末ごとに広告ブロッカーを入れなくてもよいわけです。また上の画像ように項目が豊富でイカした管理画面がついており、状況を確認したり設定を変更したりなどの作業が簡単に行えます。 注意 この記事では最初の導入方法しか扱いません。それ以上のことは別の記事を見たり、管理画面からいじってみたりしてください。 ネットワークの構成を変えることによってネットに繋がらない等

      • テクノロジー
      • 2024/05/17 10:07
      • エラーが出たら喜べ。エラーをちゃんと出せ。 - Qiita

        140 users

        qiita.com/silane1001

        どうもエラーを出すもしくはエラーが出るのが怖いという人がいるみたい。例えば改修を行うときに既存部分でエラーが出ないことを最優先にして増築を行いいびつな構造を生み出すとか、単純に例外を全然使わないとか。エラーが出ると、「うわ、エラーになった。手間かけさせやがって面倒だなぁ…」みたいな感覚があって、とにかく自分がコードを書くときも一切例外を投げないというスタンスをとりがちなのかもしれない。 私はここで、適切にエラーが出てくれるのはむしろ喜ばしいことであり、自分がコードを書くときも積極的にエラーを出すようにすべきだ、という主張をする。 関数定義のドキュメンテーションの一部 ある関数の中身で一番最初に書くべき処理は何か、それは引数のチェックをして条件を満たさなければエラーを出すことである。例えば文字列は特定の形式になってなければならないとか、数値に最大値最小値があるとか、これらは関数の入力の前提条

        • テクノロジー
        • 2024/05/03 23:02
        • プログラミング
        • あとで読む
        • エラー
        • 開発
        • programming
        • 考え方
        • CSRFトークンはもはや不要です - Qiita

          5 users

          qiita.com/silane1001

          <form action="https://bank.example.com/transfer" method="post"> <input type="hidden" name="to" value="cracker" /> <input type="hidden" name="amount" value="¥10000000" /> <button>今すぐクリック!!!</button> </form> 問題は何の関係性もないmalicious.example.comのサイトから発せられたbank.example.comへのリクエストにbank.example.comの認証情報(Cookie)が付与されてしまうことです。これによってbank.example.comに対するユーザ認証付きの操作を第三者がそれと分からない形で実行させることができてしまうわけです。 そこで導入されたのがSet

          • テクノロジー
          • 2024/03/11 16:39
          • あとで読む
          • 公衆電話で封印されしインターネット接続の儀式を行ってきた - Qiita

            12 users

            qiita.com/silane1001

            この儀式は西暦2024年1月をもって封印されました。現在「補完策」なるものが提供されていますが、それがこの儀式に有効なのかは不明です。皆さん自身の手で確かめてください。 公衆電話からインターネットに接続できるらしい。その事実を知ったのは2024年1月21日だった。そして同じ日、その機能が無くなるのは2024年1月31日だと知った。 封印までの最期の10日間で公衆電話からのインターネット接続の儀式を行ってきた話。 序章 公衆電話を使ってインターネットに接続できると知ったのは2024年1月21日だった。 ダイヤルアップ接続という電話回線を使った接続方式で、これは一般人が初めてインターネットというものに触れられるようになった一番最初の接続方式と言っていいのだと思う。多くの人が自宅の固定電話の回線を使ってインターネットをしていた。現代では光ファイバーからのLANケーブルやWifi、移動端末なら4G

            • テクノロジー
            • 2024/02/14 21:39
            • ネタ
            • あとで読む
            • ついに JavaScript に groupBy が実装されたぞ!!! - Qiita

              88 users

              qiita.com/silane1001

              JavaScript標準でgroupBy関数が実装されています。2023年11月現在Safari以外の主要なブラウザで実装済みで、SafariもTechnology Previewのようです。 (現在MDNの日本語の記事は古い情報のままになっており、現行と異なるので注意! →更新していただきました。ありがとうございます!) Proposal の Stage はすでに 4 / Finished なので規格として確定済みです。 基本的な使い方 よくあるgroupByです。配列(Iterable)とキーを抽出する関数の二つを指定すると、キーで配列をグループ化します。 const ret = Object.groupBy([ { name: '山田太郎', address: '東京' }, { name: '山田次郎', address: '愛知' }, { name: '山田三郎', addre

              • テクノロジー
              • 2023/11/29 19:03
              • javascript
              • ブラウザ最新動向
              • Web標準
              • techfeed
              • あとで読む
              • map
              • js
              • オブジェクトのクローンにJSON化を使う時代は終わった!【JavaScript】 - Qiita

                91 users

                qiita.com/silane1001

                const obj = { hoge: [new Date(2023, 3, 12), 1], fuga: 'foo' }; const objClone = structuredClone(obj); // ディープコピー obj.hoge[1] = 10; console.log(objClone.hoge[1]); // 1 objClone.hoge[0].setFullYear(2050); console.log(obj.hoge[0].getFullYear()); // 2023

                • テクノロジー
                • 2023/04/05 21:03
                • javascript
                • あとで読む
                • JSON
                • techfeed
                • JavaScriptで関数のオーバーロードを宣言する【TypeScript5.0新機能】 - Qiita

                  3 users

                  qiita.com/silane1001

                  TypeScriptによる型のある世界は生のJavaScriptでも体験できます。JSDocを使えば良いのです。JSDocを使えば型が付与された、しかし正真正銘のJavaScriptコードが書けます。JSDocはJavaScript実行環境にとってはただのコメントなので当然ブラウザでそのまま動きます。tscによる変換の儀式は不要で、型チェックだけを行うことになります。 その型チェックもVSCodeを使っていればTypeScriptをインストールしなくても勝手にやってくれるので、小さなプロジェクトならこれで十分だと思います。VSCodeを使っている前提にはなりますが、その場合なんのセットアップや変換もなく型のあるJavaScriptを扱えます。 JSDocによる型付けは割と強力で一般的な場面ではほとんど不自由しません。しかし比較的よく使う型宣言なのに今まで唯一できないことがありました。それが

                  • テクノロジー
                  • 2023/02/09 11:09
                  • 【JavaScript】setTimeoutから返るIDは絶対0じゃないし、clearTimeoutに0を渡しても何もしない - Qiita

                    3 users

                    qiita.com/silane1001

                    【JavaScript】setTimeoutから返るIDは絶対0じゃないし、clearTimeoutに0を渡しても何もしないJavaScriptsetTimeoutsetInterval 超小ネタです。JavaScriptのタイマー系関数にsetTimeoutとsetIntervalがあります。これらは返り値として数値型のタイマーIDを返し、このタイマーIDをclearTimeout及びclearIntervalに渡すことでタイマーをキャンセルできます。 このタイマーIDは0よりも大きいことが保証されています。またclearTimeoutまたはclearIntervalに無効なタイマーIDを渡しても何もしないことも保証されています。(以下参照) なのでタイマーを使っていないときはタイマーIDに0を代入しておけば、clearTimeoutを使うときに毎回タイマーを起動しているかをチェックする

                    • テクノロジー
                    • 2022/11/17 18:09
                    • 史上最強のデータベース、SurrealDB - Qiita

                      262 users

                      qiita.com/silane1001

                      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? SurrealDBというRust製データベースを知ったので紹介します。このデータベースはすごいです。リレーショナル、ドキュメント、グラフ、あらゆる種類のデータ構造を扱うことができ、かつインメモリ、単一ノード、分散環境、全てで動かすことができます。さらにHTTPやWebSocketによるアクセスと柔軟なユーザ認証、認可機能とがDB本体に内包されており、ブラウザから直に接続するWebDBとしても使えます。とにかくなんでもできる夢のデータベースといった感じです。 特徴 機能を挙げていたら多くなりすぎたので、特に面白い部分を挙げます。 配列やオ

                      • テクノロジー
                      • 2022/10/23 08:38
                      • db
                      • データベース
                      • database
                      • Rust
                      • あとで読む
                      • qiita
                      • SQL
                      • 開発
                      • programming
                      • .gitignoreでフォルダの構造のみを保持したい場合のより良い書き方 - Qiita

                        56 users

                        qiita.com/silane1001

                        例えばWebサイトのバックエンドでアップロードされたファイルを/storage/フォルダ内に入れているとする。その場合、Gitではアップロードされた/storage/内の各ファイルは無視したいが、/storage/フォルダ自体は残しておきたいということがよくある。しかしGitで管理できるのはファイルだけなので、ファイルが一つも入っていないフォルダをGitで表現することはできない。そのために.gitkeepというダミーの空ファイルを作成してGitで管理することでフォルダを保持するということが頻繁に行われている。 ここではそのような場面でこれまでよく解説されている.gitignoreの書き方とは異なる、より柔軟で単純な書き方を発見したので解説する。 結論 保持したいフォルダ構造を作成。ここでは/storage/フォルダ以下のフォルダ構造をgitで保持したいとする。 各末端のフォルダに空のファイ

                        • テクノロジー
                        • 2022/06/18 23:05
                        • git
                        • gitignore
                        • Qiita
                        • あとで読む
                        • ブラウザのJavaScriptから直接メールを送れるPaaS、EmailJS - Qiita

                          3 users

                          qiita.com/silane1001

                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? ほとんど静的でバックエンドのいらないサイトでも、唯一バックエンドが必要な部分がお問合せフォームだったりします。このお問合せフォーム等からのメール送信の機能をクラウドサービスとして行ってくれるのがここで紹介するEmailJSです。このサービスを使うことでGUIでポチポチ設定するだけでメール送信機能ができ、自分でプログラムを書いてバックエンドを組む必要がなくなります。 特徴 ブラウザからREST APIでサービスのURLに直接アクセスしメールを送信できる、REST APIをラップしたJavaScriptのSDKもある 予めサービスの管理画面

                          • テクノロジー
                          • 2022/06/07 12:05
                          • お前らはまだ img タグの alt 属性の付け方を間違っている - Qiita

                            108 users

                            qiita.com/silane1001

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

                            • テクノロジー
                            • 2022/05/23 18:40
                            • html
                            • alt
                            • accessibility
                            • web制作
                            • img
                            • qiita
                            • アクセシビリティ
                            • コーディング
                            • あとで読む
                            • フロントエンド

                            このページはまだ
                            ブックマークされていません

                            このページを最初にブックマークしてみませんか?

                            『qiita.com』の新着エントリーを見る

                            キーボードショートカット一覧

                            j次のブックマーク

                            k前のブックマーク

                            lあとで読む

                            eコメント一覧を開く

                            oページを開く

                            はてなブックマーク

                            • 総合
                            • 一般
                            • 世の中
                            • 政治と経済
                            • 暮らし
                            • 学び
                            • テクノロジー
                            • エンタメ
                            • アニメとゲーム
                            • おもしろ
                            • アプリ・拡張機能
                            • 開発ブログ
                            • ヘルプ
                            • お問い合わせ
                            • ガイドライン
                            • 利用規約
                            • プライバシーポリシー
                            • 利用者情報の外部送信について
                            • ガイドライン
                            • 利用規約
                            • プライバシーポリシー
                            • 利用者情報の外部送信について

                            公式Twitter

                            • 公式アカウント
                            • ホットエントリー

                            はてなのサービス

                            • はてなブログ
                            • はてなブログPro
                            • 人力検索はてな
                            • はてなブログ タグ
                            • はてなニュース
                            • ソレドコ
                            • App Storeからダウンロード
                            • Google Playで手に入れよう
                            Copyright © 2005-2025 Hatena. All Rights Reserved.
                            設定を変更しましたx