- 1. JavaScriptのMap・Setを使用し、配列同士の差分データを抽出する方法
- 2. Python,Ruby,PHP,Java,JavaScript,Perlのファイル・ディレクトリ操作の比較
- 3. Maximum call stack size exceeded Errorに綺麗にハマったのでgetter/setterと_についてを書く。
- 4. 洪水時の浸水深をボクセル風に立体化する
- 5. kintoneのポータル画面に残営業日を表示させる
- 6. javascriptメソッド、コールバック関数 備忘録
- 7. Vue.jsのCDNを利用して、PHPを使わずにファイルのコンポーネント化してみた。
- 8. deta.shのBaseにある予約データ__expiresに関しての注意点
- 9. 1分でわかるNextJS+ChaktaUI画面遷移
- 10. javascriptで足し算
- 11. 予約時刻表DEMO版を作りましたのでお裾分け
- 12. 【正規表現の先読み・後読み】ブタでもわかる!
- 13. Stripeで、クレジットカード情報の入力なしにサブスクリプションのトライアルを開始する
- 14. Python,Ruby,PHP,Java,JavaScript,Perlの文字列連結の比較
- 15. .NET 7の.NET JavaScript interop on WebAssemblyを試す
- 16. 「null」と「undefined」の違いをゲームで楽しく学ぼう!
- 17. NextJS+ThreeJS+electronでメタバース
- 18. 【JavaScript】配列の最後の要素を取り出すメソッド
- 19. How to create Nextron(NextJS + electron) app?
- 20. へっぽこエンジニアが MobX を学ぶ
JavaScriptのMap・Setを使用し、配列同士の差分データを抽出する方法
## はじめに
以前、JavaScriptで配列同士の比較を行う方法について投稿しました。
[JavaScriptで配列同士を比較して、重複・差分データを抽出する方法](https://qiita.com/uyupin/items/4ed7cfe205b411806413)その際に素敵なコメントをいただき、別の方法により、
パフォーマンスの向上が見込めたので記します。## 結論
Map・Setを使用して配列の比較を行う。
– Map
キーと値のペアを保持するオブジェクト
– Set
重複する値が存在しないコレクション詳細は下記が非常に分かりやすかったため、参照してください
[JavaScript Mapオブジェクト](https://qiita.com/chihiro/items/9965cd7eca0380cf288c)
[JavaScript Setオブジェクト](https://qiita.com/chihiro/items/0e610a31b589e3cc435f)## 事前準備
以下の二つの配列があったと仮定する。
「expense1」と「expens
Python,Ruby,PHP,Java,JavaScript,Perlのファイル・ディレクトリ操作の比較
Python,Ruby,PHP,Java,JavaScript,Perlのファイル・ディレクトリ操作の比較
# Python
https://qiita.com/supersaiakujin/items/12451cd2b8315fe7d054
# Ruby
https://qiita.com/prgseek/items/38f74d99b74baa3b42f7
# PHP
https://qiita.com/daichi87gi/items/111cd922991e4a18d1ef
# Java
https://qiita.com/suema0331/items/03330a663773204afc5f
# JavaScript
https://qiita.com/turmericN/items/28e8bc8fca07285ddffc
# Perl
https://perlz
Maximum call stack size exceeded Errorに綺麗にハマったのでgetter/setterと_についてを書く。
最近ちょっとJavascriptに触れていてgetter/setterをいじっていたら`Maximum call stack size exceeded Error`にハマったのだが、綺麗にハマりすぎたので記事にしようと思う。
## ハマってみる
まずはハマってみることが大切だ。
適当にインスタンスプロパティnumが10を超えたら文字列になる性質を付与してみる。“`javascript
class beStringUpper10{
constructor(num){
this.num = num;
}
set num(val){
if (val > 10) this.num = String(val);
else this.num = Number(val);
}
}let hoge = new beStringUpper10(0);
//数字だといいな
hoge.num = 1;
console.log(hoge.num)
//文字列だといいな
unko.num = 11;
console.log(hoge.num)//Uncaught Range
洪水時の浸水深をボクセル風に立体化する
## はじめに
水害のリスクを伝える際に、3D にすることでインパクトを与えるというのはよく聞くアイデアです。
国土交通省のハザードマップポータルサイトでは、全国シームレスに洪水浸水想定区域の浸水深を見ることができます。https://disaportal.gsi.go.jp/
この浸水深を立体的にしてみれば、浸水リスクが分かりやすいのではと思いましたので、簡易的に立体化させてみることにします。
**注意:これはあくまで実験で、実際のリスクを正確に示すものではありません。**
![スクリーンショット 2022-09-13 232903.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842832/d453837d-1536-7409-e28e-66929c964f6d.png)## データ
実は、ハザードマップポータルサイトのデータは [API](https://disaportal.gsi.go.jp/hazardmap/copyright/opendata.html) として提供され
kintoneのポータル画面に残営業日を表示させる
# kintoneのポータル画面に残営業日を表示させる
## ポータル画面
![スクリーンショット 2022-09-16 22.10.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1815076/133c9261-17b4-b0d2-4998-b680ade5c53b.png)## 使用したモジュール
### holiday_jp-js
https://github.com/holiday-jp/holiday_jp-js## コード
“`
import holiday_jp from “@holiday-jp/holiday_jp”;kintone.events.on(‘portal.show’, (event) => {
// ポータル画面の要素を取得
const portalSpaceElement = kintone.portal.getContentSpaceElement();
// 残営業日の要素を作成
const informationElemen
javascriptメソッド、コールバック関数 備忘録
# pushメソッド
“`js
const characters = [“にんじゃ”, “ベイビー”, “ひつじ”];characters.push(“とりずきん”);
console.log(characters);
//出力結果
//[ ‘にんじゃ’, ‘ベイビー’, ‘ひつじ’ ]
//[ ‘にんじゃ’, ‘ベイビー’, ‘ひつじ’, ‘とりずきん’ ]
“`# forEachメソッド
“`js
const characters = [“にんじゃ”, “ベイビー”, “ひつじ”, “ずきん”];characters.forEach((character) =>{
console.log(character);
});//出力結果
//にんじゃ
//ベイビー
//ひつじ
//ずきん
“`# findメソッド
“`js
const numbers = [1, 3, 5, 7, 9];const foundNumber = numbers.find((number)=>{
return number%3 == 0 //1つしか取り出せない
Vue.jsのCDNを利用して、PHPを使わずにファイルのコンポーネント化してみた。
複数ページにまたがるサイトの場合、
ヘッダーやフッターなどのコンポーネント化(同じパーツを共通化)したいなーと思うときがあります。そのときに、PHPだと`include(“ファイル名”)`でファイルを別に出来ますが、
PHPが使えない方法だと、ちょっと面倒です。今回は、PHPが使えない場合、Javascriptだけでコンポーネント化する方法があります。
# jQueryのajaxを使う方法
ajaxはAPI取得などの外部ファイルの読み込みに使うイメージが強いと思いますが、実は同じサーバー内のHTMLファイルを読み込むことも可能です。
javascriptとして
“`javascript:index.html
function header(){
$.ajax({
url: “header.html”,
cache: false,
success: function(html){
document.write(html);
}
});
}
“`
を記載し、HTML部分に
deta.shのBaseにある予約データ__expiresに関しての注意点
## 結論
* putなどのメソッドにあるoptionでexpireInの指定をした場合登録される相対時間はサーバーの時間でなく、ローカルの時間。
そのため、実際に削除される時間は想定よりサーバー時間とローカル時間のずれ分ずれてしまう
* put、putMany、insertはデータフィールドとoptionでexpireInを指定した場合、optionが優先される
* updateの場合、
* set operationで__expiresを指定した場合、データフィールドが優先されてしまう
* increment operationで__expiresを指定した場合、重複のデータを変更しようとするエラーが発生する## やったこと
Deta Baseの予約データ__expiresに関してJavaScriptで検証を行いました。
確認したdetaのバージョンは以下の通りです。
“`
“dependencies”: {
“deta”: “^1.1.0”
}
“`## Deta Baseとは
Deta Baseとは[deta.sh](https://www.
1分でわかるNextJS+ChaktaUI画面遷移
## 早速説明いたします。
“`
yarn add next/link
“`“`
yarn add @chakra-ui/react
“`
まずはプロジェクトのルートディレクトリでこの二つを実行しましょう。そしてjsxファイルなどで
“`js
import React from ‘react’
import { ChakraProvider } from ‘@chakra-ui/react’
import { Link } from ‘next/link’//Homeの部分は任意でOKです。
function Home () {
return (
page2
)
}export default Home
“`
で実装できるはずです。
事前に遷移先のページファイルも用意しておくとよ
javascriptで足し算
文字列を出力が取得できる### 足し算
“`+
=
“`
数字入力可能なテキストボックスに数字を打ち込んで自動で計算結果が表示されるようにしたい。
“`