リモートで働くプログラマーの検索結果

リモ太がググったことの覚書

javascript

getDisplayMediaで画面共有中にブラウザの共有を停止をクリックしたときのイベントをハンドリングする

const localVideoStream = await navigator.mediaDevices .getDisplayMedia({ video: { height: 1080, width: 1920 } }) localVideoStream.getTracks()[0].addEventListener('ended', () => { // ここで処理を記述 }) 画面共有のstreamのtrackに対して ended…

javascriptでiOSかどうかの判定をする

const userAgent = window.navigator.userAgent.toLowerCase(); const isiOS = userAgent.indexOf('iphone') > -1 || userAgent.indexOf('ipad') > -1 || userAgent.indexOf('macintosh') > -1 && 'ontouchend' in document; iPadOSの場合は、ユーザーエージ…

配列の同じ値の件数をカウントする

javascriptで配列の中に同じ値のものが何個あるのかカウントするいい方法が思いつかなかった シンプルに配列をぐるぐる回しながらオブジェクトに入れていってカウントすると以下のようになる const targetArray = [1, 1, 2, 2, 3, 4, 1, 2, 3, 2, 5, 6, 6, 4…

JSON.stringify() でオブジェクトの比較をするとうまくいかない

qiita.com とのこと JSON.stringify()の代わりにjson-stable-stringifyを使ってみる github.com install npm install json-stable-stringify 使ってみる import stringify from 'json-stable-stringify' const a = { a: 1, b: 2} const b = { b: 2, a: 1} co…

javascriptで文字列の前方一致

aruo.net startsWithがあるらしい //startswith var str = 'To be, or not to be, that is the question.'; console.log(str.startsWith('To be')); // true console.log(str.startsWith('not to be')); // false console.log(str.startsWith('not to be', 1…

javascriptでhtmlの文字列をパースしてimgタグのsrcを抜き出す

以下のような感じでsrcの中を取得する const text = "<img src='http://example.com/image.png'>テスト画像" const parser = new DOMParser(); const htmlDoc = parser.parseFromString(text, 'text/html'); const img = htmlDoc.querySelector('img') if (img) { console.log(img.src) } これを実行…

javascriptで配列の要素を入れ替える

let array = [1,2,3,4,5] // 入れ替える要素のindex const index = 2; array.splice(index-1, 2, array[index], array[index-1]); console.log(array) => [1,3,2,4,5] www.infoscoop.org Arrayオブジェクトのsplice()メソッドは、配列から要素を削除・追加し…

window.onblurでタブやブラウザがアクティブじゃなくなった時を検知する

別タブやブラウザが非アクティブになったときに発火する window.onblur = () => { console.log("onblue") }

rss-parserを使ってRSSフィードをjavascriptで読み込む

github.com インストール npm install --save rss-parser READMEに従って以下のコードを動かしてみる let Parser = require('rss-parser'); let parser = new Parser(); (async () => { let feed = await parser.parseURL('https://remoter.hatenablog.com/r…

moment.jsを使って時間だけ表示したい

javascriptで日付操作をするライブラリ moment.js momentjs.com 時分だけ表示したい場合は以下のようにする moment().format('hh:mm'); // 12時間表示 moment().format('HH:mm'); // 24時間表示

DataTableを使ってbootstrapで書いたtableを並び替え可能にする

以下より、利用したいbootstrapのバージョンを指定してCDNのリンクを取得 www.datatables.net headに取得したリンクを設置 <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/dt-1.10.20/datatables.min.css"/> <script type="text/javascript" src="https://cdn.datatables.net/v/bs/dt-1.10.20/datatables.min.js"></script> 利用したいt…</link>

javascriptで配列の比較をするときはtoString()を使う

const arr1 = [1, 2, 3] const arr2 = [1, 2, 3] console.log(arr1 === arr2) => false console.log(arr1.toString() === arr2.toString()) => true

DOMPurify.sanitizeで特定のタグと特定の属性だけを許可したい

リンクと画像だけを許可したい場合は以下のようにする const text = 'なにかしら<a href="https://www.google.com" target="_blank">リンク</a>' DOMPurify.sanitize(text, { ALLOWED_TAGS: ['a', 'img'], ALLOWED_ATTR: ['href', 'target', 'src'] })

javascriptで確認ダイアログを表示する

if (window.confirm('確認ダイアログを表示しました。\n処理を継続しますか')) { console.log('OK') } else { console.log('キャンセル') } たまに使うのでメモ