- 0.1. 【Node.js】コールバック地獄の関数からPromiseを使って同期処理後に値を取得する
- 0.2. [rails]Googlemap APIを使ってプチ食べログを作りたいのでテスト環境で途中まで実装してみた!
- 0.3. [nodejs + mysql] routesでapiを管理する
- 0.4. node.jsでチャットしながら出来るブラックジャックを作りました
- 0.5. 【Vuetify】v-expansion-panelとv-switchの併用
- 0.6. いくつかの言語で、空白類の挙動
- 0.7. Javascript の exit()
- 0.8. JSでのフォームバリデーションの作成方法
- 0.9. Goでマッチングサイトを作りました
- 0.10. YouTubeAPIを叩く(51件以降のデータを取得する)
- 0.11. プロジェクト内全てのファイルのエラーを表示させるVSCodeのtips
- 0.12. 条件文(if、else、else if)を使ってみる【JavaScript】
- 1. ifとelse
- 2. はじめまして
- 3. 〇〇の始めかた
【Node.js】コールバック地獄の関数からPromiseを使って同期処理後に値を取得する
## はじめに
意外と検索してパパっと出てこないので記事化してみました。Azure上のMySQLとの接続処理をコーディングしていたので、サンプルのコードはMySQLのusersテーブルからデータを取得する処理をイメージしています。
## 実現したいこと
async/awaitを使って非同期処理内で関数を同期実行して、返り値を同期的に取得したいケースがあるんじゃないかと思います。
“`sample.js
(async function() {
response = await requestApi();
console.log(response);
})();
“`
Promiseを返してくれる関数だったら楽でいいのですが、例えば下記のようにコールバックにコールバックを重ねている関数を全て同期処理させた後、値を取得するにはどうすればいいのでしょうか。
“`dbaccess.js
import * as mysql from ‘mysql’;
import * as fs from ‘fs’;
import * as dotenv from ‘do
[rails]Googlemap APIを使ってプチ食べログを作りたいのでテスト環境で途中まで実装してみた!
2022/11/27
これまでずっと詰まってたのですが
日本サッカーがコスタリカに負けてから何故かうまく行き始めたのでそのままの勢いでQiitaを書きます。
私は初心者なので、正解を書ける自信がないので完全未経験の方用に何か書くつもりはあまりありません。ご承知ください。
また、違ったことを書いている可能性もございますので、その時は宜しければご指摘していただけると幸いです。## [やりたいこと]
ポートフォリオ用に、食べログのラーメン屋さん専門みたいなのを作ろうかなと
やろうとしている機能は
○Device機能
☆GooglemapAPI(今回の主軸)
○多対多(アソシエーション、フォロー機能)
○AWS
などです。## [注意]
かなり行き当たりばったりな記事です。
先にサンプルファイルで機能実装テストが完了してから本番ファイルで実装する予定です。
こちらのテストではユーザー関連は実装しておりませんので
後々、他のgemなどの影響で書き方など変わる可能性があります。ご承知ください。## [環境]
※使っていない可能性のある環境も記載してます。
Mac M1チップ
ra
[nodejs + mysql] routesでapiを管理する
# 初めに
nodejs + mysql でベックエンドのコード書いているが、徐々にコートが長くなってカテゴリごとに分ける必要性を感じた。
ここで、routerという機能を使ってより管理しやすく環境を整えることを書いておく。# 環境
window 10
mysql 8.0.31
ejs: 3.1.8
express: 4.18.2
## Dir
“`:dir
├─public
index.html
users.html
├─routes
users.js
└─views
server.js
“`
# Code
## routesで分ける前
“`javascript:server.js
const express = require(‘express’);
const mysql = require(‘mysql’);
const app = express();
app.set(‘view engine’, ‘ejs’)const con = mysql.createConnection({
host: ‘localhost’,
user: ‘
node.jsでチャットしながら出来るブラックジャックを作りました
こんにちは
お久しぶりです。りちゃ丸です
10月までに完成させると言っていたチャットの出来るカードゲームなのですが
何とか完成しました
今回はブラックジャックになります
![ブラックジャック.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2879865/4386bafd-e340-b863-73f7-1fbe417fc27e.jpeg)
“`app.js
‘use strict’
const express = require(‘express’);
const socketIo = require(‘socket.io’);
const http = require(‘http’);
const fs = require(‘fs’);
const bodyParser = require(“body-parser”);
const ejs = require(‘ejs’);
var url =”./index.ejs”
const html =fs.readFileSync(url,’utf-8′,
【Vuetify】v-expansion-panelとv-switchの併用
## やりたいこと
Google chromeの設定画面にあるような
スイッチトグルつきのアコーディオンを作りたい。
![chorome.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1773736/aa8ae11b-3ebb-2706-1421-f189f66abe05.gif)## コード例
“`html
いくつかの言語で、空白類の挙動 # これは何?
https://qiita.com/universato/items/c1f97e1843e010ed8dd8
という記事を見て、私も遊んでみた。## JavaScript
ちゃんと調べてないけど、Unicode で空白となっている文字は空白だと思う。
なので、唯一の(私調べ)目に見える空白文字、` ` (U+1680、オガム文字の空白) を半角空白の代わりに使える。
“`JavaScript:JavaScript
const a = () => {
console.log(“hello” + ”, “ + ”spaces”);
};
a( );
“`ちなみに手元の環境では「format on save」で全部半角空白にされてしまうので、この機能を OFF にする必要がある。
## go
[仕様書](https://go.dev/ref/spec#Tokens) を見ると
> Tokens form the vocabulary of the Go language. There are four classes: identifie
Javascript の exit()
厳密には動作違うかもしれないが、とりあえず `exit()` (スクリプトを途中で止める)場合はこれで良さそう。
“`javascript
return false;
“`自分的にはこれで落ち着いてる。。。
軽くしか調べてないけど、javascriptではexit()できないってのを見て、false返せばそこで処理終わるんじゃね?って思った。
ご指摘ありましたらコメント欄へお願いします。Javascript ワカンナイ…
NodeJS? VueJS? チョットヨクワカラナイJSでのフォームバリデーションの作成方法
# フォームバリデーションとは
フォームに入力されている内容が妥当かどうかをチェックする機能のことです。
年齢のボックスには年齢が、名前のボックスには名前が入力されているのか、入力されていない場合はエラーを表示させる、といったものです。# やったこと
・htmlにエラーメッセージを書く
・エラーメッセージにクラスをつける(err-txtとした)
・cssにてerr-txtをdisplay:none;で消す
・JSにて条件分岐を作成…## JSでやったこと
・フォームタグの情報を取得する変数formを定義
・addEventListenerでsubmitイベントを作成、関数定義
・それぞれのインプットタグに対応する正規表現を初期化した変数(定数)を定義
“`
const katakanaRegex = new RegExp(/^([ァ-ン]|ー)+$/);
“`・それぞれのインプットタグの要素をform.name.valueなどで取得(ややこしいが、ここのnameはそれぞれのインプットタグに書いてあるname属性である。)
・取得したインプットタグの要素(
Goでマッチングサイトを作りました
# はじめに
こんにちは!
大学内マッチングサイト【まっちんぐ+R】を作成しました。
開発期間はおおよそ1週間半です。![スワイプ.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2982158/ba87e240-21e0-c998-4f8d-3446061ded93.gif)
# 何を作ったのか?
大学内マッチングサイトを制作しました。
[まっちんぐ+R](https://www.matchingr.tokyo)
![まっちんぐ+Rアピール.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2982158/457a4a42-fecd-f743-3fb6-ec0a628d0691.jpeg)# なぜ作ったのか?
20歳になって「この人たちに出会えて本当に良かった!」と感動することが本当に多くなりました。よい経験や機会に巡り合うと、「なぜここまで来れたか」を考え、「あの人と出会ったからだ!」と奇妙な体験に面白いと感じYouTubeAPIを叩く(51件以降のデータを取得する)
# 0.今回の依頼内容
前回の続きです! [YouTubeAPIを叩く](https://qiita.com/DoNotPrayDebug/items/733164c3498654c79066)**【今回の仕様】
キーワード検索で、数か月で登録者1000人突破したチャンネルを抽出**実際に動かしたのものが、こちら。
#YouTube で1000人登録って大変
サンプルは
・検索ワード「#チェンソーマン」プロジェクト内全てのファイルのエラーを表示させるVSCodeのtips
# はじめに
最近Reactのメジャーアップグレードを結構な規模のリポジトリで行いました
それに伴って、TypeScriptや、その他過去バージョンに依存していたライブラリのメジャーバージョンアップも行ったのですが、開くファイルファイルでことごとく赤い波線が引かれていました。。。
数十ファイルくらいの規模なら一つひとつ開いて確認・修正するのでも良いのですが、そんな訳にもいかず、スマートに全て確認する術を調べてみると意外と日本語でまとまった記事がなく苦労したので共有します
ということで全てのファイルに対してのTypeScriptのエラー内容を問題(PROBLEMS)タブに表示し、左のディレクトリ構成一覧画面からもどこのファイルがアウトなのか赤文字で出るようになるようになって幸せになることが本記事のゴールとなります# 環境
Visual Studio Code: 1.73.1 (Universal)
※ 以下でも説明しますが、v1.42.1以降じゃないとうまくいかないと思います
Japanese Language Pack for Visual Studio Code: 1.73.x条件文(if、else、else if)を使ってみる【JavaScript】
今回はJavaScriptで条件文を書いてみます。
ifとelse
おそらく、実際のプログラムを見た方が理解が早いと思いますので、早速以下のプログラムを実行してみましょう。
“`html
タイトル
“`上記を実行すると、以下のように「変数Aの値は10以上です。」と表示されます。
![exe_practice7.png](https://qiita-image-store.s3.ap-north
JavaScript参考サイト
https://www.youtube.com/watch?v=HeLnMQ-R86M
https://ja.savefrom.net/1-youtube-video-downloader-144.html
https://www.youtube.com/watch?v=ZCt06tXxtFg&list=RDCMUCHxqQ8b
[Java Script] jQueryを用いてinput, textareaの編集中にエンターでイベントを発生させる
# Code
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2821152/3f6607ef-a422-45d1-76c6-502604e75b47.png)
このように編集する内容があると仮定、
`form`を用いておらず、ajax通信をしているので`input`や`textarea`でEnterキーを押しても何も反応しない。
より直感的に操作できるようにしたいので、`input`上でEnterキーを押したらボタンを押すようにしたい
## jQuery
“`html:jQuery
“`
## inputでEnter
“`javascript:input
$(“input[type=text]”).on(‘keyup’, function(e){
if(e.key===’Enter’||e.keyCode===13){JavaScriptからReact、Next.js、TypeScriptを学んでPFに取り掛かれるレベルになるまでのロードマップ
以下のロードマップ/学習記録は[ProadMaps](https://proadmaps.com/1506616851853242371/roadmaps/14)で作成しました。
ロードマップの作成、共有から、作成したロードマップをマークダウンで出力ができるので、Qiita等の外部サイトや、個人ブログへの転記にも便利です。https://proadmaps.com/1506616851853242371/roadmaps/14
# JavaScriptからReact、Next.js(TypeScript)までの学習ロードマップ
**概要**
Next.jsでポートフォリオを作成できるようになるまでの学習記録になります。今だったらこの順番でやればよかったなぁと思う順番に並び替えています。
**タグ**
Next.js,React,TyepScript,JavaScript,Ruby,Rails
**開始時スキル**
Railsの学習経験あり
**終了時スキル**
ポートフォリオに取り掛かれる
**総ステップ数**
7
## ステップ1 【Progate】 Pr
ひきこもりサークル&ネットワーク
はじめまして
はじめまして。
ちばっしーと申します。
![051f9f0bdf3398c6164b346945183b74.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2986658/98b6d4a1-3f18-7184-544b-e7556fb43ad4.jpeg)
[ひきこもりサークル&ネットワーク](https://chiba-shii.com/)というブログをやっております。社会貢献を目指したブログです。
そちらでプログラミングに関する記事も書いております。>【誰のどんな問題を解決するのか?】
>ひきこもりの人達の孤独、生きる楽しさがない、収入が少ないなどの問題を解決する。
>
>【理念】
>それぞれの好きなことから、人と繋がり、楽しみ、収入を得て、人生を豊かにする。〇〇の始めかた
初心者の方向けの記事です。
[・プログラミングの始めかた](https://chiba-shii.com/start-programming/)
Progateunko64ウンコーダー
# unko64
trimscashです
https://github.com/trimscash/unko64https://trimscash.github.io/unko64/
うんこを使って意思疎通するやつを作った.
# 仕様
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2730711/394915cf-4d5d-032f-57db-3db690f4e6bc.png)ボタンを押すとそれぞれunko64(base64)でエンコード,デコードしてくれる.
# 仕組み
“`js:main.js
let base64Strings = “abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/+=”;
let unko64Words=[
“くそ”,
“クソ”,
“糞”,
“うんち”,
“ウンチ”,
“うんこ”,
“ウンコ”,
“うんにょ”,
“うんにゃ”,
“うんぴ”,
“ゲTypeScript 参考サイト
https://qiita.com/S42100254h/items/5f284b3e86cdbd5a5787?utm_content=buffer581f6&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer#5%E3%83%9D%E3%83%BC%E3%83%88%E3%83%95%E3%82%A9%E3%83%AA%E3%82%AA%E3%81%AE%E8%AA%B2%E9%A1%8C
https://zenn.dev/yumemi_inc/articles/js-front-constants-a1fb3c49eb1199
class名やid名指定でaddEventListenerを処理させる方法
class名やid名の指定の仕方によっては、戻り値が変わってきます。(配列とかHTMLCollectionとかNodeListとか)今回はどんな形であっても、addEventListenerで処理させる方法をまとめます。
### document.getElementByIdの場合
~~~ JavaScript
const btn =document.getElementById(“btn”);btn.addEventListener(‘mouseenter’, function() {
//処理内容
});
~~~
`document.getElementById`の場合、途中の処理を必要とせず、直接記述できます。
### document.querySelectorAllの場合~~~ JavaScript
const btn = document.querySelectorAll(“.btn”);btn.forEach(function(btn) {
btn.addEventListener(‘mouseenter’, function() {JSのプラグイン「Swiper」を使ってみた
# はじめに
今回の記事では、JavascriptのSwiperというライブラリについて
実際に使ってみた感想も踏まえて解説したいと思います。
結論から言うと、かなり簡単に時間をかけずに実装ができます。
# Swiperとは?使用に至った理由
私はWebアプリを制作する中で、トップページは印象に残りやすい動きのあるものがいいなと考えておりました。
検索をしているとjQueryを使った実装が多く、これまでjQueryを触ったことがなかった私にとっては学習コストがかかってしまうため、
ほかの方法を探していたところjQueryが不要な「Swiper」にたどり着きました。
# Swiperを導入することで可能なこと
– スライドをループさせる
– スライドのスピードを変更できる
– スライドの自動再生
– スクロールバーの表示
– スライドにページネーションを付けられる
– スライドにホバーした時にズームインする
※他にもいろいろあります# Swiperの導入手順
手順は2つだけです。
– ファイルの読み込み
– HTMLとJSのコーディング### ファイルの読み
関連する記事
OTHERカテゴリの最新記事
-
- 2024.09.19
JavaScript関連のことを調べてみた
-
- 2024.09.19
JAVA関連のことを調べてみた
-
- 2024.09.19
iOS関連のことを調べてみた
-
- 2024.09.19
Rails関連のことを調べてみた
-
- 2024.09.19
Lambda関連のことを調べてみた
-
- 2024.09.19
Python関連のことを調べてみた