- 1. D3 v7 入門 – Enter / Update / Exit
- 2. ブラウザのウィンドウをスクリーン上で動かした時の位置の変化が Babylon.js で描画したパーティクルの数・背景の色などに影響する処理【Babylon.js-3】
- 3. MapLibre GL JSにdeck.glレイヤーを組み込む方法
- 4. 同期処理と非同期処理の違いついて簡単なまとめ
- 5. 【日本人エンジニア必見】英語圏の優良学習コンテンツまとめ
- 6. 動的生成したstyleタグが可能にすること(JavaScriptで要素生成前にCSSを変更)
- 7. kintoneでjsカスタマイズ時の日付と小数点アリの計算をするときのポイント
- 8. JSで日付扱うならmoment
- 9. WebAssembly の過去・現在・未来
- 10. Rechartsの軸ラベルを見切れないようにする方法
- 11. Web上で使える璃奈ちゃんボードを作った話
- 12. フィンランド語で音声入力をしよう!
- 13. LINEで「ぽちずかん」外出先でのこどものぐずり対策に。3巻配布中!
- 14. Firefox 121 がリリースされて :has() が使えるようになりました。そして Intl.Segmenter は Firefox 123 で使えるようになる予定です。
- 15. 苦手克服したい「JSXの{}にはJavaScriptの式書く!!」
- 16. 【JointJS】DirectedGraphを利用してツリー形式の図を作成する
- 17. 要素からはみでたら文字を丸めるJSプラグインを作成
- 18. e.preventdefaultの挙動について
- 19. HERE Maps APIを使って避難所・避難場所を表示してみる
- 20. 現代開発者のためのCSS基礎技術
D3 v7 入門 – Enter / Update / Exit
本記事は D3 v7 入門のための記事です。特に Data Join (Enter / Update / Exit) の基本的なところをまとめました。少し複雑なので、あいまいさを排除するため、重複した説明を繰り返している箇所もあります。冗長に感じられたらすみません。
開発環境は テキストエディタまたは Visual Studio でコードを書き、以下の Python 標準の Web サーバを使って動作確認しています。
“`
python -m http.serverhttp://localhost:8000/test1.html
“`以下、簡単なサンプルコードを示しながら、D3 の基本的な機能を説明していきたいと思います。上から順番に呼んでいただければと思います。
【参考サイト】
[D3 Getting started](https://d3js.org/getting-started)
[d3-selection](https://d3js.org/d3-selection)
[d3tutorial](https://github.com/sgratzl/d3tut
ブラウザのウィンドウをスクリーン上で動かした時の位置の変化が Babylon.js で描画したパーティクルの数・背景の色などに影響する処理【Babylon.js-3】
この記事は「[Babylon.js Advent Calendar 2023](https://qiita.com/advent-calendar/2023/babylonjs)」の 20日目の記事です。
## 今回の内容
この記事では、以下の記事で書いていた「スクリーン上でブラウザのウィンドウを動かしたら、そのウィンドウの移動(位置)が描画に影響する」という内容と、Babylon.js のパーティクルの描画を組み合わせてみようと思います。●「スクリーン上でブラウザのウィンドウを動かしたら描画に影響」「2つのブラウザのウィンドウの一方を動かすと他方に影響」という方向の実装作品の技術メモ – Qiita
https://qiita.com/youtoy/items/945edb13856417c8c901### 実行した結果
まず、今回の内容を実行した結果から紹介します。
以下の動画内の内容についてざっくり書くと、ウィンドウが画面の上のほうにあるか、少し真ん中よりの位置(もしくはそれより下)にあるかで、パーティクルの数・背景の色が変わります。
同期処理と非同期処理の違いついて簡単なまとめ
## 同期処理と非同期処理の違い
**同期処理**ってのは、一つの仕事が終わるまで、ほかの仕事が待たなきゃいけないやつ。例えば、以下のJavaScriptコードを見てみる。
“`javascript
function 同期処理() {
console.log(“タスク1”);
console.log(“タスク2”);
console.log(“タスク3”);
}同期処理();
“`**非同期処理**はもうちょっとフリータイムがあって、待たなくてもいい感じ。JavaScriptでこんな感じに書ける。
“`javascript
function 非同期処理() {
console.log(“タスク1”);setTimeout(function() {
console.log(“タスク2(非同期)”);
}, 1000);console.log(“タスク3”);
}非同期処理();
“`### いいところと悪いところ
**同期処理**はシンプルでわかりやすいけど、タスクが長いと待ち時間ができちゃう。
**非同期処理
【日本人エンジニア必見】英語圏の優良学習コンテンツまとめ
この記事は[Nuco Advent Calendar 2023](https://qiita.com/advent-calendar/2023/nuco)の20日目の記事です。
:::note info
弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。
また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、[こちら](https://www.recruit.nuco.co.jp/?qiita_item_id=94bd9e5d5dfd665ad044)まで。
:::# はじめに
エンジニアリングの分野では、技術の進化が日々進んでおり、エンジニアにとって継続的な学習が不可欠です。新しい技術の習得やスキルの向上に有効な学習手段が重要です。日本では日本語のコンテンツはもちろんありますが、最先端の技術を取得するには、英語圏のコンテンツは切りたくても切り離せないことです。本記事は、日本人エンジニアが自身のスキルを向上させ、最新の技術に追いつくための優れた英語コンテンツをご紹介します。
動的生成したstyleタグが可能にすること(JavaScriptで要素生成前にCSSを変更)
# はじめに
動的に生成される要素のCSSをあらかじめ変更しておきたい。といった稀なケースの対応方法。先に方法を書いてしまうと
「JavaScriptで生成したstyleタグにCSSを書いて、htmlのheadタグに追加して、動的生成にする要素に適用する」原始的な方法です。## 稀なケースとは?
例えば「動的生成される要素のCSSを変更したいけど、要素の生成を監視はしない」といったお題があり、以下のような縛りまである場合。
生成する動的要素に対して、
– 新しいclassやidを追加しない
– style属性を使ってCSSを書き込まない
– 外部スタイルシートも修正しない## JavaScriptでよくある要素のCSS変更方法
JavaScriptを使用したCSS変更の多くが、以下のように要素の取得が前提になっています。
“`javascript:JavaScriptでよくある要素のCSS変更
// 要素を取得
var div = document.getElementById(‘target’);
// または下記で取得
// var div = document.
kintoneでjsカスタマイズ時の日付と小数点アリの計算をするときのポイント
# 概要
日付の計算と小数点ありの場合の計算についての対処方法について学びましょう!
kintoneアプリのテンプレートもダウンロードできるので、実際に操作しながらご確認いただけます!# ポイント
* 日付・時刻の計算は、思ったよりも複雑(日またぎ、月またぎ、年またぎ、うるう年など)なので、積極的にライブラリを使いましょう。
* サイボウズが提供している **[CDN](https://cybozu.dev/ja/kintone/sdk/library/cybozu-cdn/)** に日付ライブラリとして **[Luxon](https://moment.github.io/luxon/#/)** が置いてあるので、それを使うとよいかなと思います。
* 軽さですと **[Day.js](https://day.js.org/)** などもおすすめです。
* ちなみに、**[developer network](https://cybozu.dev/ja/)** には、**moment.js** についての記述が散見されますが、現在moment.jsは**メンテナンスモード**に
JSで日付扱うならmoment
## はじめに
私は株式会社qnoteにて、勉強会の幹事を務めております。
2023年度勉強会の珠玉のネタを2023Qiitaアドベントカレンダーに投稿していこうと思います。## 対象者
この記事は下記のような人を対象にしています。– 駆け出しエンジニア
– プログラミング初学者## 結論
JSで日付扱うなら、Dateよりmomentです!## 解説
フロントエンドで日付を加工して表示させたい時、ありますよね。
Date()とMoment()の手法を比較しました。## Date()は冗長
“`javascript
const date = new Date ()const year = date.getFullYear() // 年
const month = date.getMonth() + 1 // 月
const day = date.getDate() // 日
const dayOfWeek = date.getDay() // 曜日(数値)
const dayOfWeekStr = [ “日”, “月”, “火”, “水”, “木”, “金”,
WebAssembly の過去・現在・未来
## はじめに
WebAssembly (略して Wasm) では WASI や WIT、 Component Model など様々な仕様があります。
それぞれが登場した背景、モチベーションなどを理解することでなんとなく概要を掴んでいくことができるのではないかと考えたため、過去・現在・未来と時間軸で整理してみました。まず Wasm とその特徴に関して簡単に紹介した後、Wasm の過去として生まれた背景やモチベーションを紹介します。
そして現在の Wasm がなぜ注目を集めているのか、そして現在策定中の仕様と目指している未来について紹介します。## WebAssembly とはなにか
WebAssembly はスタックベースの仮想マシン用バイナリ命令フォーマットの仕様です。Wa
Rechartsの軸ラベルを見切れないようにする方法
この記事は [intimatemerger Advent Calendar 2023](https://qiita.com/advent-calendar/2023/intimatemerger) の 20日目の記事です。
## はじめに
はじめまして。
[株式会社インティメート・マージャー](https://corp.intimatemerger.com/)開発本部でエンジニアをしています、 @april418 です。弊社では多くのデータを扱っています。
そのデータを活かすために昨今では生成AIの活用なども行っていますが、人の目で見て判断できるようにすることも大切です。
そのため、弊社の IM-DMP という製品では、グラフなどを用いてデータを可視化する機能を提供しています。IM-DMP では React ベースのグラフ表示ライブラリ [Recharts](https://recharts.org/) を使用しています。
レスポンシブ対応や幅広い種類のグラフに対応しているなど、非常に素晴らしいライブラリです。しかし、日本語のラベルだと自動改行がうまくいかず、ラベルが見
Web上で使える璃奈ちゃんボードを作った話
この記事は [N/S高等学校 Advent Calendar 2023](https://qiita.com/advent-calendar/2023/n-s-highschool) 20日目の記事となります。
https://qiita.com/advent-calendar/2023/n-s-highschool
# はじめに
こんにちは。marukun_と申します。去年に引き続き、今年もN/S高等学校 Advent Calendarに参加させていただきます。
今回はWeb上で手軽に動作する璃奈ちゃんボードを作成したので、いくつかの実装を抜粋しながら紹介していきます。
# 璃奈ちゃんボードとは
璃奈ちゃんボードとは、アニメ「ラブライブ!虹ヶ咲学園スクールアイドル同好会」に登場する感情表現が苦手な女の子、天王寺璃奈(CV.田中ちえ美)が感情表現を行うために使うボードです。璃奈ちゃんは普段、あらかじめペンで表情を描いておいたスケッチブック版璃奈ちゃんボードを使用しています。![image.png](https://qiita-image-store.s3.ap-northeas
フィンランド語で音声入力をしよう!
# はじめに
最近、フィンランド語の勉強をはじめたソフトウェアエンジニアです。そのうち旅行に行けたらいいなと思っています。フィンランドを勉強するにあたり困ったことは、英語などとは異なり、会話ができる教材がないことです。それならば作ってしおうと思い、フィンランド語会話アプリを趣味で絶賛開発中です。今回は、フィンランド語で音声入力をする方法まで解説します。
# 前提知識
### WebSpeechAPI
Webブラウザで音声入力をするには、WebSpeechAPIを利用します。Web Speech API とは、ウェブブラウザが音声認識と音声合成を行うためのインターフェースを提供する技術です。このAPIを使用することで、ウェブページやアプリケーションはユーザーの話し言葉をテキストに変換したり、テキストを音声で読み上げたりすることが可能になります。Web Speech APIは二つの主要な部分から成り立っていますhttps://developer.mozilla.org/ja/docs/Web/API/Web_Speech_API
### react-speech-recogni
LINEで「ぽちずかん」外出先でのこどものぐずり対策に。3巻配布中!
## 「ぽちずかん」:子供がぐずる時の救世主!
こんにちは、ものづくり小児科医のうえだです。
小さいお子さんのいるご家庭のみなさま、外出時のお子さんのぐずりに困りることってありますよね?
「今だけちょっと静かにしてて。。じっとしてて。。」
荷物がたくさんになるのも嫌だし、静かな場所ではスマホで動画も流しづらいし…。ボタン押す楽しみ!押すと何か出てくるわくわく!ついでに図鑑という知育要素あり!それが「ぽちずかん」です。
LINE上で使
Firefox 121 がリリースされて :has() が使えるようになりました。そして Intl.Segmenter は Firefox 123 で使えるようになる予定です。
# はじめに
この記事は [2023 年の MDN 翻訳 Advent Calendar](https://qiita.com/advent-calendar/2023/mdn-translation-community-japan) 向けに作成したものです。
こんにちは。debiru です。「Firefox は利用者数が少ないので対応ブラウザから外します」とか言っているサービスは Web 標準を冒涜しているので滅んでどうぞ。
今日は記念すべき Firefox 121 リリース日なので、改めて Firefox 121 でできるようになったことをお伝えするとともに、Firefox 122 あるいは 123 でサポートされる重要な機能についてお話したいと思います。
# Firefox 121 がリリースされたよ
Firefox 121 でのキャプチャ画像です。
![Firefox 121 では :has() 疑似クラスが使えます](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/178936/51947c7
苦手克服したい「JSXの{}にはJavaScriptの式書く!!」
## はじめに
エンジニアになって3ヶ月経ち、それなりにコードを書いて気づいたのですが…
苦手なところってありませんか??
いつも間違えてエラーが出たり、なかなか覚えられない文法など…今日エラーが出たところが私の苦手ポイントでした。
もう流石に引っかかりたくないので、戒めのためにまとめたいと思います。## 私の苦手ポイント
私の苦手ポイントは、**JSXの{}の中に何を書けばいいのかわからない**ことです。
JavaScriptの式を書くと知識として知っていても使いこなせておらず、同じようなエラーを出してしまいます。
以下、まさに今日出たエラーを具体例として紹介します。## 具体例
### 背景
クリックすると画面遷移をするボタンがすでに実装されています。
どの画面に遷移するか?によって遷移先とボタンのラベルが異なります。
これまでは、ボタンの種類は2種類だけでしたが、もう1つボタンの種類を増やすことになりました。### 方針
こちらが元のコードです。
元は三項演算子で書かれてました。ここに、`toPlanC`という分岐を入れることになりました。
“`react
【JointJS】DirectedGraphを利用してツリー形式の図を作成する
JointJSにはDirectedGraphという、有向グラフを作成するためのレイアウト機能が用意されています。今回はそちらを使ってツリー形式の図を作成していきます。
## 完成イメージ
以下のようなツリー形式の図を作成できます。
各四角形の座標は四角形に紐づいたLinkの情報からDirectedGraphが自動計算して決定してくれます![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129526/a1bbd5cb-c6c3-4277-4e54-ba73532c3c67.png)
## 実装
### 下準備
DirectedGraphを使用するためには、`dagre`と`graphlib`というライブラリを追加で取り込む必要があります。お手軽に利用する場合は以下の`