- 1. 配列の要素を追加・削除して遊んでみた!【備忘録】
- 2. 【JavaScript】3分のカウントダウンタイマーを作成せよ。具体的な要件は以下に示す。
- 3. 数字 並び替え
- 4. 【jQueryメモ】ハンバーガーメニュー
- 5. jQueryの基本構文
- 6. javaScript 配列のデータを並び替える方法
- 7. 【Vue】CompositionAPIでcomputed, data, method
- 8. 【Vue.js 勉強メモ】$emitメソッドの正体 コンポーネント(子→親)の間のデータ受け渡しでやってる事
- 9. functionガチアンチでもfunctionを使わなければならない状況、どう打破すべきか?
- 10. 2次元アクションゲームにおける摩擦を実装する(pixi.js)
- 11. JavaScriptでサブクラス可能なFunctionクラスを作る
- 12. 個人的におすすめしたいプログラムの技術サイト
- 13. Googleアナリティクスでクリック数を計測
- 14. [Rails6.0 + jQuery + Bootstrap] d-flexが有効だと style="display: none;" が効かない。
- 15. Vue.jsで動的に要素変更
- 16. innerHTML
- 17. 【Javascript】高階関数(higher order functions)をかじってみた
- 18. 【JavaScript】テキストボックスに文字を入力しボタンをクリックすると、入力された文字が2秒ごとに先頭から1文字ずつ順番に表示されるプログラムを作成せよ
- 19. 【JavaScript】「背景黒」ボタンを押すと、ページ全体の背景色が黒で文字色が白、「背景白」ボタンを押すと、ページ全体の背景色が白で文字色が黒となるようプログラムを書け
- 20. VSCodeを再起動して更新したいのにJS/TS言語機能の初期化が終わらない!
配列の要素を追加・削除して遊んでみた!【備忘録】
こんにちは!
今日は、配列を使って遊んでみました。
配列の処理には、色々ありますが、今回は、「要素の追加・削除」です!# 要素を追加する
まずは、要素を追加してみましょう。
要素を追加するのに、「配列の末尾に追加する方法」と「配列の先頭に追加する方法」の2つがあります。## 1. 末尾に追加してみた!
ますは、末尾に追加する方法です。push()メソッドを使います。
push()メソッドの書き方は以下です。“` JavaScript
元の配列.push(追加したい要素);
“`“` JavaScript
let array1 = [“わらびもち”, “大福”, “みたらし団子”];
let array1_2 = array1.push(“柏餅”);
console.log(array1);
// [“わらびもち”, “大福”, “みたらし団子”, “柏餅”]
console.log(array1_2);
// 4
“`
元の配列(上の例ではarray1)の末尾には、要素が追加され、要素が追加され
【JavaScript】3分のカウントダウンタイマーを作成せよ。具体的な要件は以下に示す。
1・カウントは03:00からスタートする
2・スタートボタンを押すと1秒ずつカウントが進む
3・カウントが00:00になったら「Time UP!」と表示する
4・ストップボタンを押すとカウントが止まる
5・リセットボタンを押すとカウントが03:00に戻り、カウントが止まる
6・スタートを二度押しても1秒ずつカウントが進むこと。“`javascript
カウントダウンタイマー
```型定義する場合
```vue
```# computed
【Vue.js 勉強メモ】$emitメソッドの正体 コンポーネント(子→親)の間のデータ受け渡しでやってる事
## はじめに
仕事で使う事になったので1からVue.jsについて学んだ。
ちゃんと覚えておかないとまずそうな事を備忘録として1つ1つ残しておく。## $emitメソッドの正体 コンポーネント(子→親)の間のデータ受け渡しでやってる事
カスタムイベントを定義・発火させることができるメソッド[^1]。
このメソッドを応用して、コンポーネント間(子→親)のデータの受け渡しを行う事ができる。
![ezgif.com-gif-maker (5).gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1372684/39fc1f53-a2c7-33da-9d35-fc4417b1f743.gif)
[^5]: ソースコード全体を見たい場合は[ここ](https://github.com/yuta-katayama-23/intro-vuecli/tree/bd97b33e82ad94f76b4734f5001168f662b808cd)
動画のソースコードは以下[^5]。```vue:parent-compone
functionガチアンチでもfunctionを使わなければならない状況、どう打破すべきか?
アロー関数は最高だ。
私たちの人生を豊かに彩ってくれる。
ところが、泣く泣くfunctionを使う状況がある。
#例
```js
(function f(){
console.log(1234);
setTimeout(f,500);
})();
```
即時関数を再帰的に呼び出したいとき、functionを使ってこのように書けば名前空間を汚さずに表現できる。
しかし、私はfunctionガチアンチなのでfunctionは絶対に使いたくない。
functionを使わず、名前空間も汚さず同様の処理を表現するにはどうすればいいのか?
#解決策
```js
(f=>f(f))(f=>{
console.log(1234);
setTimeout(()=>f(f),500);
});
```
こうすればよい。
これで忌々しきfunctionの脅威は消え去った。
#まとめ
いやどう見てもfunctionの方が簡潔だろ
2次元アクションゲームにおける摩擦を実装する(pixi.js)
物が動くと面白い。
その速度が変化すればより面白い。
等速直線運動だけでは面白くない。
動き始めたものにはそのうち止まってほしい。
つまり、摩擦を実装したい。画像の表示にはpixi.jsを利用する。
```js:scsript.js
//Aliases
let Application = PIXI.Application,
loader = PIXI.loader,
resources = PIXI.loader.resources,
id = loader.resources,
Sprite = PIXI.Sprite;//アプリケーション宣言
const width = 500;
const height = 600;let app= new Application({
width:width,
height:height,
antialias: true,
transparent: false,
resolution: 1,
autoResize: true,
bac
JavaScriptでサブクラス可能なFunctionクラスを作る
JavaScript に於いて,関数は特殊なオブジェクトのため,普通にサブクラスすることはできません.そこで,普通に関数を作成して,その関数に対して必要な定義を行うこととなります.ここで,工夫して定義を行うと,普通のサブクラス可能な関数コンストラクタを定義することができることを発見いたしました.以下にそのコードを示します.
## コード
なお,このコードは Apache 2.0 ライセンスで利用可能なものとします.
```javascript
{
let _;
const ExtensibleFunction = function ExtensibleFunction(){return _(new.target)};
Reflect.setPrototypeOf(ExtensibleFunction, Function);
ExtensibleFunction.CALL = Symbol('[[Call]]');
ExtensibleFunction.CONSTRUCT = Symbol('[[Construct]]');
Exte
個人的におすすめしたいプログラムの技術サイト
プログラムを学ぶとき、良質なサイトを探すのにかなりの時間を浪費した。
他の人にはそうなってほしくないので、今まで役立ったサイトを公開する。
なお、強くオススメしたいサイト順に並ばせる。
随時更新予定。# JavaScript
> (Webで動きを付けたいときに使う有名なアレ)・JavaSciptチートシート (まとまっていてわかりやすい)
https://jsprimer.net/cheatsheet/・JavaScriptの業務スキルレベル 判別表(この記事はだいぶ古いが今でも有用)
https://language-and-engineering.hatenablog.jp/entry/20100111/p1・MDNエラーリファレンス
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Errors・Excel VBAプログラマーのためのGoogle Apps Script入門
https://www.atmarkit.co.jp/ait/series/5004/・Java
Googleアナリティクスでクリック数を計測
# Over view
- GoogleAnalytics(GA)でリンクごとのクリック数を計測したい
- LPなんかのサイト分析の時にリンクごとのクリック数を計測する時とかに便利
- onclickタグを1つ導入するだけで簡単に設定できます# Code
```html:index.html
Hello,world!
```
- 'event' => そのまま記述しましょう。
- 'c
[Rails6.0 + jQuery + Bootstrap] d-flexが有効だと style="display: none;" が効かない。
#課題
Bootstrapのd-flexが有効な場合 $element.fadeOut() が効かなかった。
![スクリーンショット 2021-05-12 10.56.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/239796/c851751b-b3b1-9b00-e02b-2acdd5f7db0f.png)
**子要素の列が消えてくれない。#原因
どうやらこいつだ。
![スクリーンショット 2021-05-12 10.59.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/239796/42c74ae6-a6ff-805a-c912-ed36cbc6ea05.png)#結論
d-flex を外すと効いた。```js:jquery
$element.removeClass('d-flex')
$element.fadeOut(300)
```
Vue.jsで動的に要素変更
配列に動的に値を追加して描画できなかったので、Obejctにしなさいよという教訓から書きます:tea:
間違い等ありましたら、ご指摘していただけると幸いです。# リアクティビティ
>Vue は、配列における次の変更は検知できません:
>インデックスと一緒にアイテムを直接セットする場合、例えば vm.items[indexOfItem] = newValue
>配列の長さを変更する場合、例えば vm.items.length = newLengthhttps://jp.vuejs.org/v2/guide/reactivity.html#%E5%A4%89%E6%9B%B4%E6%A4%9C%E5%87%BA%E3%81%AE%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A0%85
上記の内容に引っかかって配列にひたすらpushして悩んでいました。(ちゃんとドキュメント読もうね...)
またリアクティブプロパティの宣言も行っておらず、カオスな状況でしたので原因の発見に遅れました。```vue:Paramedit.vue
innerHTML
■ innnerHTML とは
innerHTMLを使用すると、HTML要素の取得や書き換えを行うことができる
例えば、以下のように指定した要素の文字列を取得・操作することができます。■イメージ図 ⬇️
https://gyazo.com/19a2a0e0396b2764bfd80fd888ffa641
今日の投稿は以上です。
wagaでした!
【Javascript】高階関数(higher order functions)をかじってみた
# 初めに
javascriptを学習したら、高階関数という概念が出てきたのでそれについて自分なりに理解した内容をまとめてみました。※内容に間違いなどがある場合はご指摘をよろしくお願いします。
# 高階関数とは
関数の引数に関数を取る関数のこと。英語ではhigher order functionsという。# なぜ使うのか
一度定義した関数に自分なりに味付けをして細かい内容を追加したりしてカスタマイズができるメリットがあるから。その他にも理由があるらしい。# 取り敢えず使ってみた
数字をブラウザに表示するシンプルな関数を定義しました。```javascript
function printNumber(inputNumber) { document.write(inputNumber); }
printNumber(1)
```
![スクリーンショット 2021-05-12 8.23.21.png](https://qiita-image-store.s3.ap-northeast-1
【JavaScript】テキストボックスに文字を入力しボタンをクリックすると、入力された文字が2秒ごとに先頭から1文字ずつ順番に表示されるプログラムを作成せよ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/954863/08216c04-e1d9-2b35-38e4-2eaa840a0c49.png)
```javascript
順番に文字を表示