Using stalkerware is creepy, unethical, potentially illegal, and puts your data and that of your loved ones in danger.
PHPの関数定義はこんな変態的な書き方ができる - 頭ん中 に、続いて。アンリーダブルコードで勉強しようというのがあった、そのとある勉強会の発表ネタです。 これは、PHPのMarkdownパーサ の実装を可能な限りそのまま綺麗に変換してJavaScriptに移植しようという js-markdown-extra をやっていたとき、大ハマりして修正に苦労したバグの話から来てます。 演算代入。+= とか *= とかのやつ。関数型の人以外はきっと常用してますね。じゃあ問題。 <?php $tokens = array("a", "b", "c"); $tokens[0] .= array_shift($tokens); print_r($tokens); こうするとどんな結果が出力されるでしょうか。PHPです。 自身の先頭から要素を取り出して、それを先頭要素に文字列追加する。array_shift
JavaScriptでフォーカスのあたっている要素を取得できるHTML5の新機能「document.activeElement」について紹介します。 1.document.activeElementとは 「document.activeElement」からの引用です。 document.activeElementは冒頭に記したとおり、フォーカスのあたっている要素を取得するためのdocumentプロパティで、HTML5で策定された新機能みたいです。 HTML5 - 6.5.3 Document-level focus APIsより The activeElement attribute on DocumentHTML objects must return the element in the document that is focused. If no element in the Do
8月3日〜4日に開催されたプログラマのためのお祭り的イベント集え変態プログラマ!JavaScriptの最短コードに挑んだコードゴルフ大会 in Code 2013 by Yoshiaki Sato in Tech — 2013/08/06 フロントエンド担当のヨシアキです。 8月3日〜4日に開催された"Code 2013"に参加してJavaScriptのコードゴルフの問題を出題してきましたので、そのレポートを兼ねて、JavaScriptのショートコーディングについて語ってみようと思います。 Codeとは プラットフォーム・言語・コミュニティの壁を超えてプログラマが達が集う、プログラマのためのお祭り的イベントです。 開催地はこれまでのところ、温泉郷で有名な札幌の定山渓で開催されています。 そのため、ゆったりと温泉に浸かりながらプログラミングについて語り、美味しいお料理とお酒に舌鼓を打ちなが
FINDJOB! 終了のお知らせ 2023年9月29日にFINDJOB!を終了いたしました。 これまでFINDJOB!をご利用いただいた企業様、求職者様、様々なご関係者様。 大変長らくFINDJOB!をご愛顧いただき、誠にありがとうございました。 IT/Web系の仕事や求人がまだ広く普及していない頃にFind Job!をリリースしてから 約26年間、多くの方々に支えていただき、運営を続けてまいりました。 転職成功のお声、採用成功のお声など、嬉しい言葉もたくさんいただきました。 またFINDJOB!経由で入社された方が人事担当になり、 FINDJOB!を通じて、新たな人材に出会うことができたなど、 たくさんのご縁をつくることができたのではないかと思っております。 2023年9月29日をもって、FINDJOB!はその歴史の幕を下ろすこととなりましたが、 今後も、IT/Web業界やクリエイティブ
iPhoneからBluetooth経由で基板を操作することができる「konashi」。 konashiは日本の会社・ユカイ工学で開発されたフィジカル・コンピューティングキットです。 フィジカル・コンピューティングというのは、現在はコンピュータを操作するにはマウスやキーボードを使っていますが、センサーなどを使って、以外にも人間とコンピュータとの意思疎通の幅を拡げることです。 といいつつ、僕も全くの専門外なのでよく分かっていません。すみません。 とりあえず、「iPhoneを使った電子工作が簡単に出来る」くらいの認識でノリで買ってしまいました。え、c言語書けなくていいの?くらいのノリです。 早速、konashiが届いたので試してみました。 konashi開封の議 注文して数日で届きました。こんなシンプルな箱に入ってきました。 中身はこれだけです。この右上がkonashi。 下にあるリチウム電池と
これまでのあらすじ 新人の力量を測るための課題としてオセロの作成を指示したが、 指示した当人が作れないようでは話にならないので実際に作り始めた。 一先ず盤面が4×4で黒も白も人間が指す一人二役の寂しいオセロは実装できたのだが、 快適に遊ぶには大きな問題が潜んでいたのであった。 実は4×4で既に重い問題 実際に前回作成したオセロを実行すると、 ゲームが遊べるようになるまでに割りと待たされます。 それもそのはずで、あの実装は ゲーム中で取り得る局面を予め全て列挙 していたからです。 しかも4×4という最小限の盤面のオセロですらゲーム中に出現し得る局面 = ゲーム木に含まれるノード数は 284,881個 あります(※回転すると同じになる盤面等は個別に数えて、同一盤面でも手番のプレイヤーが異なるなら別と数えて、パスした場合も1個と数えています)。 そりゃあ待たされるに決まってますし、無闇矢鱈にメモ
今まで平気でundefinedを使ってましたが、underscore.jsのソース読んで、無防備にundefinedを使っちゃいけないなってことを初めて知りました。いやはや、まったくもって面目ない! 知っている方なら知っていると思いますが、意外と知らない方も多いのでは?という意味でのプチ記事です。 void 演算子 voidは1つの式を取って、常にundefinedを返す演算子です。 例えば void 0 void (0) void 99 void "wow" void {} //すべてundefinedが帰ってくる と、このように、voidはundefinedの代わりとして使えるのが分かりますよね。 上記の理屈で行くと、そんな面倒なことをするまでもなく、undefinedを直接使えば済む話じゃあ?と思いますよね。ところが話はそう簡単ではないようです。 何故なら、なんと、undefined
JavaScriptでは、初見の人にはさっぱりわからないけれども、ある程度慣れた人は当たり前に使うイディオムが結構たくさんあります。知ってしまえば何てことはないので、私の知っている限りのイディオムとその意味を解説します。 (7/3追記: twitter等で教えていただいた内容を追加しました) +v (数値化) var v = "123"; console.log(+v + 100) // 223 console.log(v + 100) // 123100 vを数値化する方法では最もメジャーです。parseFloat(v) に比べて高速なのに加えて、parseFloatとは細かい挙動が異なります(例えば空文字列の場合、parseFloatならば NaN になりますが、 +v の場合はゼロになります)。必ず数値になることが保証されており、文字列などで数値化出来ない場合はNaNが返ります。 v
この資料では、JavaScript でオブジェクト指向プログラミングを行う際に備えておくことが望ましい、基礎知識や概念について解説します。 【対象者】 ・JavaScript でアプリケーションを構築できる方 ・JavaScript におけるオブジェクト指向プログラミングの 実現手法や原理への理解を深めたい方 ・Java 的なクラスベースの言語との違いに違和感や混乱を 感じてらっしゃる方Read less
JavaScriptでMVCをやってると、「そもそもDOMってモデルだよね」って思うことがあって、いやいやそれは違うんだと言い聞かせているうちに、謎の4コマ完成。 DOMはモデルだよ DOM = Document Object Model という名の通り、DOMはモデルだよ。 これをイベントのたびに更新してやればいいんだ。表示も自動で追随してくれるよ。 重複してるよ でも本来同じものなのに別々に更新してやらないといけない場面が出てきたよ。 これだと片方を更新し忘れたら不整合になるよね。 こんなの絶対おかしいよ。 DOMはビューだよ いやいや、本当はモデルはDOMの外にあるんだ。 これを一箇所更新すればそれぞれに自動で反映されるようにすればいいんだよ。 わぁ、頭いい。 面倒だし一度に更新すればいいんだよ でも大抵データって更新のたびにサーバに保存して欲しいでしょ。 本当のモデルはサーバサイド
allcolors.js # (view raw) Print out all colors from computed styles used in elements on the page. Uses styled console.log calls to visualize each color. // allcolors.js // https://github.com/bgrins/devtools-snippets // Print out CSS colors used in elements on the page. (function () { // Should include colors from elements that have a border color but have a zero width? var includeBorderColorsWit
console.log(+[]); // 0 console.log(+[3]); // 3 console.log(+[null]); // 0 console.log(+[undefined]); // 0 console.log(+["3"]); // 3 console.log(+[1,2]); // NaN console.log(+[true]); // NaN console.log(+[false]); // NaN なぜこのような処理になるのか、JavaScriptの仕様書(ECMA Script Specification 5th)から説明してみましょう。 まず最初、単項+演算子(Unary + Operator)を評価する際に、ToNumberを呼び出すのは前述したとおりです。仕様書の(11.4.6)に書かれています。ではToNumberとはどのような処理でしょうか。
2015-08-10 Javascriptを使ってクライアントサイドで画像を縮小する場合に必要となるOrientation情報を、最小のコードと処理でJPEG画像から取得する関数を作りました。 クライアントサイドで画像を縮小してプレビューし、アップロードすることで通信帯域やサーバの負荷を抑えるJavascriptは比較的簡単に作れます。しかしiPhoneで試してみるとなんか変な状態になってしまいました。調べてみるとiOS6でメガピクセル画像をCanvasに描画するとおかしくなってしまう件と、その対処というページを見つけて、iPhone側に問題がありそうで、解決策も提示されているようです。 そこで必要となるのが、画像の正しい方向(回転とか鏡像とか)なのですが、JPEG内のEXIF情報に書き込まれているっぽいです。EXIF情報を取得するためのJavascriptコードもいろいろあるのですが、E
フォームの入力欄にテキストを表示するテクニックとして、HTML5のplaceholder属性やtitle属性にいれたテキストをスクリプトで置き換える方法などがあります。 しかし、placeholderはplaceholderなので、ラベルの代替として利用するのはW3Cでも推奨していません。 参考:The placeholder attribute -W3C フォームに余分なHTMLを追加せず、ラベルを利用してシンプルに解決する方法を紹介します。 入力時はラベルがツールチップで 実装 実装のポイント label要素内のテキストをラベルとして利用する。 初期状態でラベルのテキストを表示する。 入力時にもラベルがユーザーの目に見えるようにする。 ラベルの配置はフォームとページのレイアウトで行われるようにする。 スクリプトが利用可能でない時でも、ラベルを利用できるようにする。 これらのポイントを踏
2. 自己紹介自己紹介 情強そば屋の中の人こと砂原 昌史 そば屋五兵衛の店主 砂原 謙一(父) 現在⼆級在宅⼠とプログラミングの⽇々 ◦ そろそろ本気出したい ◦ 最近は C#(WPF) いじってます 言語 ◦ メイン:html, css, javascript, PHP, C#◦ メイン:html, css, javascript, PHP, C# ◦ サブ:perl, powershell ◦ たしなむ程度:ruby, python ◦ 忘れつつある:vbs ◦ ほぼ忘れた:C 松本経済新聞の記事は一部誤りが。 ◦ 過去にプログラマーはしたことありません。 Icons by http://dryicons.com
この記事では、私がオブジェクト指向のどこを愛しどこを素晴らしいと感じていて、そのうえでなぜオブジェクト指向を使うことを避けているのかを書き留めておきます。関数型言語使いの方で、「オブジェクト指向の何がいいのかわからない」「オブジェクト指向難しすぎ・複雑すぎ」とおっしゃる方にぜひ読んでいただきたいと思っています。また、「オブジェクト指向言語完璧に理解したわ」と思っている方にも読んでいただきたく思います。 なお、ここでのオブジェクト指向の定義は、「各言語でオブジェクト指向と呼ばれているものすべて」とします。JavaやScalaやJavaScriptやSmalltalkやRubyやCommon LispやOCamlがオブジェクト指向と呼んでいるものすべての総称です。もっとまともな定義が知りたい方は以下の記事がおすすめです。 オブジェクト指向の概念の発明者は誰ですか?(改訂版) - Smallta
先に選択方針を図にまとめたものをあげておきます。 JavaScript 系新言語のどれかは使うべき ? 最初にそもそも何か新しい言語を使う必要があるのか? というところから考えてみましょう。 JavaScript に変換する言語あるいは取って代わろうとする言語 がいろいろできてきている状況を考えると、 今のままの JavaScript には問題がある と多くの人が思っていることは間違いないです。 そのため、今後は JavaScript を直接書くのはやめて、 どれかの言語は使うべきだと思います。 JavaScript にもいいところはある、 新しい言語を覚えるのは大変という人も多いでしょう。 しかし、理由は後で説明しますが、そういう人でも TypeScript は使うべきです。 対象言語 ここに挙げたもの以外にもありますが、私が有名だなと思うものと対象にしました。 CoffeeScript
[JavaScript] tr要素 の display プロパティを用いた表示切替えについて | Blog | Development Reference を読んで、display = "block" はアカンやろ、と思ったので書いておく。 <div id="foo"> <p>FOO</p> </div> div#foo を JavaScript から表示/非表示をするには。 ダメパターン function show (elm) { elm.style.display = "block"; } function hide (elm) { elm.style.display = "none"; } これはダメなパターン。何故なら、show 関数が対象とする要素が、display: block で合っているか保証がないから。 場合によっては、inline,inline-block,table,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く