JavaScript関連のことを調べてみた

JavaScript関連のことを調べてみた
目次

HTMLでリサイズを簡単につける

# 内容
リサイズする要素を複数作るときに、簡単に追加できるようにしました
入れ子にも対応しています
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1773714/1ed00285-f69a-2494-ec1b-365eba3c5f2e.png)

# 使い方
それぞれ以下のコードを追加するだけです
top,bottom,left,rightがコンテンツになります

全体での記述例は記事の最後に置いておきます

## 横
“`html

top
bottom

“`

## 縦
“`html

文字コードの変換と確認など

過去に作ったものを1つにしたものです。

入力されたテキストを変換したり、文字コードの確認ができます。

– 正規化:NFC,NFD,NFKC,NFKD の各種で正規化します
– 変換された文字は背景の色が変化します
– コードポイント:文字ごとに文字コードをルビとして表示します
– innerHTML:出力タグの innerHTML に代入します
– 入力されたテキスト次第では正常動作しなくなるので注意してください
– 英数字(他)変換:ASCIIの英数文字をボールドやイタリックなどの文字コードに変換します(できない場合もあります)
– “Sample” → “𝐒𝐚𝐦𝐩𝐥𝐞”, “𝑆𝑎𝑚𝑝𝑙𝑒”, “𝕊𝕒𝕞𝕡𝕝𝕖” など
– 円内文字への変換:円の中に該当文字があれば変換します
– “SAMPLE 10” → “ⓈⒶⓂⓅⓁⒺ ⑩”, “🅢🅐🅜🅟🅛🅔 ❿” など
– 丸括弧付き文字への変換:丸括弧で括られた文字との対応があれば変換します
– “(祝) (A)(B)(C) (a)(b)(c) (10)” → “㈷ 🄐🄑🄒 ⒜⒝⒞ ⑽”
– 異字体設定 : 各文字に

元記事を表示

絵文字があるか判定する

絵文字が含まれているかどうかを判別します。
入力された文章から絵文字を除去するコードはいくつか合ったけど、真偽で返すのは無かったので残します。
絵文字を判定しているサイトをいくつか比べたのですが、完璧に判定するのは難しいのですね…
“`js
const emoji = new RegExp(/[\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF]/, ‘g’);

const judgeEmoji = input => {
return input.match(emoji) ? true : false
}

judgeEmoji(‘おはよー😇’); // true
judgeEmoji(‘こんに👨‍🍳ちは’); // true
judgeEmoji(‘こんばんは!’); // false

“`

https://teratail.com/questions/157253

https://cory

元記事を表示

Array.someとArray.everyを空の配列で実行するとどうなる?

# はじめに
`Array.some`と`Array.every`、どちらも配列においてとても便利なメソッドですね。
自分も幾度となく使っていてお世話になっています。
そんな頻出のメソッドではありますが、空の配列だった時の挙動がちょっと意外だったので備忘録も兼ねてまとめてみました。

# 前提:`Array.some`と`Array.every`って何?
日々JavaScriptと戦っている方なら解説不要かと思いますが、一応記述しておきます。

Array.some(callbackFn)
配列の要素それぞれでcallbackFnを実行し、trueを返す要素が一つでもあればtrueを返し、そうでなければfalseを返す。
砕いて言うと、配列の中で条件を満たすものが一つでもあればOKとする ということ。
Array.e

p5.js でカメラ画像のアスペクト比は保ちつつキャンバスにピッタリ合うように表示位置・サイズを調整する

記事の内容はタイトルの通りです。

p5.js でカメラ画像を使った作品をよく使うのですが、例えば以下のようなシェーダーを絡めた処理や、その他 AI・機械学習を組み合わせた処理を行った場合に、解像度の高い画像を使うと処理が重たくなることがあります。

その場合に、処理する画像の解像度をあまり高くしないで処理するということがありました。
一方で、展示イベントなどに出した際に、カメラ映像は 640x480 などの解像度を使ったとしても表示上は画面いっぱいか、それに近いサイズで表示させたいという場合があります(※ カメラ画像のアスペクト比は変えないようにしつつ)。

このような場合に、処理する画像は画面いっぱいのサイズより小さいものを使っていても、表示では画面いっぱいに表示する、ということを行うプログラムをメモとして残してみます。

## パターン1: キャンバスサイズが固定
まずはキャンバスサイズが固定の場合の例です。

まずはプログラムを示します。こちらは、キャンバスのサイズは

主要仮想通貨取引所の手数料の一覧データを一括で取得してみた

# 趣旨
正確な手数料の把握はbotを作るのに必然になる割に、いちいち計算するのは楽しくないので自動で取得して計算できるようにしました。

結果的にはfeeはtierやVIPレベルで一括で決まっていることが多く、銘柄毎に手数料の数値を取得することにあまり意味はないと大分後になってから気づいて手数料の自動取得をメインのコードに組み込むことは途中で断念したんですが、本記事のコード自体はきちんと動作します。

# JavaScript
JavaScriptを使います。
JavaScriptをサーバーサイドの言語のように扱うことのできるNode.JSを利用します。

https://ja.wikipedia.org/wiki/Node.js

仮想通貨Botterにとっては必要不可欠なライブラリであるCCXTはPythonよりもJavaScriptの方がドキュメントが詳しく書いてあるのと、Web3系のドキュメントもJavaScriptよりの言語で書かれてることが多いので多分Pythonと同時並行で習得した方が作業が楽になります。

以下のコマンドでnode.jsがインストールされているか確認

斜方投射(空気抵抗あり)の飛距離を求めたい

斜方投射はきっと多くの方が通る道でしょう。スポーツをしている人々も大学生も斜方投射したことがない人の方が少ないのではないでしょうか。
ですが、空気抵抗ありの斜方投射で飛距離を求めるのはかなりの難易度です。その方法をここに記します。
# まずは式から

このページより、$x$を飛距離、$y$を初期条件の高さ、$k$を空気抵抗係数、$m$を質量、$g$を重力加速度として
``` math
X=\frac{kx}{mv_0\cos θ}
```
``` math
Y=-\frac{k^2y}{m^2g}
```
``` math
Z=1+\frac{kv_0\sin θ}{mg}
```
``` math
Y=XZ+\log(1−X)
```
ということがわかります。指数をとると
``` math
e^Y=(1−X)e^{XZ}
```
正負を反転させて
``` math
-e^Y=(X-1)e^{XZ}
```
$e^{-Z}$倍して
``` math
-e^{Y-Z}=(X-1

JavaScript 基礎 - Day5

# JavaScript 基礎 - Day5

> 知道对象数据类型的特征,能够利用数组对象渲染页面

- 理解什么是对象,掌握定义对象的语法
- 掌握数学对象的使用

## 对象

> 对象是 JavaScript 数据类型的一种,之前已经学习了数值类型、字符串类型、布尔类型、undefined。对象数据类型可以被理解成是一种数据集合。它由属性和方法两部分构成。

### 语法

声明一个对象类型的变量与之前声明一个数值或字符串类型的变量没有本质上的区别。

```html




JavaScript 基础 - 对象语法

独自プレイヤー(video)でHLS.JS配信とかで再生が詰まった(?)時のゴニョゴニョのやつ

こういうやつ。再生中によく出るやつ。
![スクリーンショット 2024-02-03 0.06.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3691016/e15c3855-bb19-727d-333f-86609100d5fc.png)

HLSとかプレイヤーを自分でゴニョゴニョ実装してた時、個人的にすげぇ困ったのでメモる。
HLSのやり方は https://stream.77lab.cloud のソースを開発者ツールで見てくれたらいいよ。
今回はこの「ロード中だお少し待て」の探知方法を書くので。

こんなVIDEOタグを使っている前提だお:
```

```
したが再生が詰まった時の

```
VIDEO_EL = document.getElementById("VIDEO"); //VIDEOタグを取得するお

VIDEO_EL.addEventListener('waiting',