Base64形式の画像データをcanvasに表示するサンプルです。 サンプルソース 例)Base64文字列をcanvasにセットする <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>サンプル</title> <script> var data = "data:image/jpeg;base64,/9j/4AAQS..."; //Base64データ(省略しています) function setBase64(){ //2Dコンテキストのオブジェクトを生成する var cvs = document.getElementById('cvs1'); var ctx= cvs.getContext('2d'); //画像オブジェクトを生成 var img = new Image(); img.src = data
JavaScriptの正規表現で特定の文字列を抜き出す「グループ化」について解説します。 JavaScriptで特定の文字列を抜き出して処理したいことがよくあるのですが、グループ化の使い方を忘れてネットで検索してもなかなかヒットしないので、備忘録で残しておきます(他に適切な方法があるようでしたらすいません)。 1.特定の文字列を抜き出す まず基本として、特定の固定文字列を抜き出すには、match関数で次のように記述します。 var foo = 'abcdefg'; var bar = foo.match(/abc/); これは変数fooに「abc」という文字が含まれていれば、変数barに abc が設定されます。 変数fooに「abc」という文字が含まれていない場合、変数barにnullが設定されます。 この使い方は、検索したい文字列があらかじめ決まっていて、上記のような代入文ではなく、判
iOS Safari で見せる Web サイトをネイティブアプリ風に見せるための演出の一つとして、「適当なところでダブルタップした時にズームしない」ことを実現したい。 Twitter や Instagram を iOS Safari で見るとそのような動きが実現されているので、何かやり方はあるんだろうなぁーと思ったのだけど、かなり手こずってしまった。 iOS10 までは user-scalable=no が使えた JavaScript で TouchEnd イベントをチェックする方法 touch-action: manipulation が一番カンタン iOS10 までは user-scalable=no が使えた meta 要素で指定するヤツ。今では動かない。 <meta name="viewport" content="width=device-width, initial-scale
[{id:1, ...}, {id:2, ...}. {id:3, ...}, ...] みたいな配列を{id: {...}, id: {...}, id: {...}, ...} なオブジェクトに形式に変換したい時のメモ。 e. g. 元の配列 const arg = [ {id: 1, name: '星宮いちご', type: 'cute'}, {id: 2, name: '霧矢あおい', type: 'cool'}, {id: 3, name: '紫吹蘭', type: 'sexy'}, ]; 👇こう変換したい { '1': { id: 1, name: '星宮いちご', type: 'cute' }, '2': { id: 2, name: '霧矢あおい', type: 'cool' }, '3': { id: 3, name: '紫吹蘭', type: 'sexy' }, }
「そもそもオブジェクトをループで回したい場面なんてねぇよ!」 「潔く標準のメソッド使えよ!」といったツッコミを想定の上で書いております. ご承知の上でお読みください. フロー ふとオブジェクトをループで回したいってときに私がたどるフロー for in 使うか? いや keys で key 配列とってきて forEach で回したほうがカッコよくね? obj.keys().forEach(...) ... あれ? エラー?? keys って Object の static メソッドかよ!! Object.keys(obj).forEach(...) これを今回は↓ forIn(...) 使お♪ で済ませちゃおうって tips です. よくやっちゃうダサいパターン for in でまわす. hasOwnProperty() 忘れがち. var human = { name: "phi", ag
javascriptの変数の渡し方は、基本文字列や数字以外は全て参照渡しです うっかり渡して追加したり削除したりするともとの変数が変更されてしまいます そのため、元の変数を上書きしないコピーが時々欲しくなります jqueryだったら$.extend()を使えば良いのですが、javascriptだけの場合どうすればいいのか?
JavaScriptの正規表現について勉強してるので忘れないうちに、まとめる。 正規表現とは 文字列内で文字の組み合わせを照合するために用いられるパターンです。 @正規表現 MDN web docs 簡単な例(郵便番号ver) > var pattern = /^\d{3}-?\d{4}$/g; > var postcode = '121-4440'; //正しい郵便番号 > var result = postcode.match(pattern); undefined > result ["121-4440"] > var pattern = /^\d{3}-?\d{4}$/g; > var postcode = '121-444'; //正しくない郵便番号 > var result = postcode.match(pattern); undefined > result null
JavaScript で人為的に例外を発生させるには、大きく分けると以下の2種類があります。 throw new しない書き方 throw "ソフトウェアでエラーが発生しました。サポート担当者に連絡し、この問題を報告してください。"; o_o は String 扱いで、o_o.stack も undefined になっています。 throw new する書き方 throw new Error("一般的なエラーだよ"); throw new TypeError("型がちがうよ"); throw new SyntaxError("文法おかしいよ"); throw new URIError("URIちがうよ"); 他にも、RangeError, ReferenceError, MediaError, FileError, EvalError などがあります。 throw new した場合は、o_
検証の背景 Javascriptでオブジェクトなどを含む、 ディープコピーがうまくできない問題が話題になります。 そのあたりは下記サイト様をご参照ください。 ES6のObject.assignがシャローコピーなのでディープコピーする方法を考える [JavaScript]色々なディープコピー JavaScript:Array,Object,Map,Set,Dateをまとめてディープコピーする Node.jsのnpmで、 簡単にディープコピーができるものがあったので、 紹介します。 環境 node.js v8.12.0 npm v6.4.1 ライブラリを取得する lodashというライブラリは、 配列、オブジェクト、文字列を簡単に扱えるようになる、 人気のライブラリだそうです。 詳しくは下記公式サイトをご確認ください。 github npm なおブラウザでも使えるようです。(未検証) http
今回はNode.js上で簡単にQRコードが生成できるnode-qrcodeを利用し、動的にQRコードを生成してみたいと思います。 github.com QRコード自体は非常に便利ですよね。2次元バーコードよりも情報量が増やせるため様々な用途に利用できます。 しばらく前から日本はQRコード決済が世を賑わせていますが、個人的には早く滅んでくれないかなと思っていますがそれはまた別の話しw なんでFeliCaから退化しとんねんw インストール HelloWorld 出力方式 BASE64 SVG 文字列 canvas オプション 高さと横幅 色 背景を透過色 余白 最大文字数 エラー訂正レベル 文字列の種類 UTF8を利用するには 続き 参考ページ インストール node-qrcodeはコマンドラインから利用できるコマンドも用意されていますが、今回はNode内からモジュールとして利用します。そのた
node-qrcode QR code/2d barcode generator. Highlights Installation Usage Error correction level QR Code capacity Encoding Modes Binary data Multibyte characters API GS1 QR Codes Credits License Highlights Works on server and client (and react native with svg) CLI utility Save QR code as image Support for Numeric, Alphanumeric, Kanji and Byte mode Support for mixed modes Support for chinese, cyrilli
stripgtags は npm 又は yarnを使って入手します。また、ブラウザから使う場合はCDNを通してライブラリを読み込むことも可能です。 # npm npm install striptags --save # yarn yarn add striptags # cdn *IE 11以上 https://unpkg.com/striptags striptags の使い方は簡単で、PHPの ' strip_tags ' 関数と 使い方は変わりません。 第一引数に元となる文字列を指定すると、HTMLタグが消去されます。 // ブラウザの場合、そのまま striptags()関数が呼び出せます const striptags = require("striptags"); let baseHtml = "<div href='someClass'>" + "<strong>strip
switch (式){ case 値1: 式 === 値1 の時に実行する処理; ... break; case 値2: 式 === 値2 の時に実行する処理; ... break; case 値3: 式 === 値3 の時に実行する処理; ... break; default: 式がいずれの値とも一致しないときに実行する処理; ... } switch のあとの () に記述した式を評価し、その値が case の後に書かれたいずれかの値と一致するかどうかを調べます(一致するかどうかは == 演算子ではなく === 演算子を使って比較されます)。一致するものが見つかった場合は、その case 句の後に記述されている処理を switch 文の最後または break 文まで順に実行します。 いずれの値とも一致しなかった場合は default 句の後に記述されている処理を実行します。 defau
import { UAParser } from 'ua-parser-js'; // 1. Problem: // Imagine getting this wild user-agent string from a visitor: const ua = `Mozilla/5.0 (Linux; Android 10; STK-LX1 Build/HONORSTK-LX1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/110.0.5481.153 Mobile Safari/537.36 musical_ly_2022803040 JsSdk/1.0 NetType/WIFI Channel/huaweiadsglobal_int AppName/musical_ly app_version/28.3.4
2016年 7月2日 10時05分 7年前 node.jsで「UAParser.js」を使ってモバイルの判別をする方法の紹介です。 javascriptでモバイルを判別するライブラリの1つに "mobile-detect.js"が挙げられます。 mobile-detectをnode.jsで使う場合、モバイル以外からのアクセス(ユーザーエージェントの解析時)は「null」を返すので少々使いドコロに癖があります。 // expressを使った例 const MobileDetect = require('mobile-detect'); // mobile-detect.jsの場合 app.get('/mobileDetect', (req, res) => { md = new MobileDetect(req.headers['user-agent']); const resp = { a
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く