タグ

JavaScriptとTipsに関するgirledのブックマーク (7)

  • JavaScript:undefined値の判定

    JavaScriptでは初期化されていない変数には全て「undefined」という値が入っています。 var a; alert(a); //undefinedが入っている これを利用して、変数が定義済みかどうかを判別することが可能です。…が、やり方がいろいろあるみたいなので、まとめてみることにします。 undefinedと比較する if (a === undefined) { alert("aは未定義"); } グローバル変数として、そのまんまundefinedという名前の変数が用意されているので、それと比較するやり方。一番素直な方法ですが、JavaScriptにおいては良くない書き方とされています。 undefinedは予約語ではなく、単なる変数です。だから上書きすることができるし、関数スコープ内で同名のローカル変数を作ることもできます。(ただし最近の処理系ではconst扱いになって上書

    JavaScript:undefined値の判定
    girled
    girled 2014/03/08
    typeof使ってたけど==null代用のほうが確かに可読性高いと思ったけど、やっぱり保守性考えるならtypeofなんだろうなあ。ハンチングのコードだったら俺の一存で==nullにしちゃうんだけども。。
  • ソーシャルボタンのJavaScriptでfunctionの前に「!」がついている理由

    ソーシャルボタンのJavaScriptでfunctionの前に「!」がついている理由を調べてみました。 1.はじめに TwitterPocketなどのソーシャルボタンのコードをみると、共通してscript要素の中にあるfunctionの前に「!(エクスクラメーション)」がついています。 Twitterの場合 <a href="https://twitter.com/share" class="twitter-share-button" data-via="yujiro" data-lang="ja" data-size="large">ツイート</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getE

    girled
    girled 2013/06/13
    なるほど、確かに単項演算子と思えば不自然ではないなあ。パズルみたいで面白い。コードゴルフやってるみたい。
  • jQuery JSONPでPHPでやりとりする方法 at Brandons Experimental Archive

    だいぶ間が空きましたが ちょっとハマったのでメモっておきます。 jQueryでのajaxは $.ajaxというシンタックスにて利用できますが その際にクロスドメインの問題とかの場合、 XMLデータじゃなくてJSONを使ったJSONPという仕組みを使います。 jQuery側は [javascript] $.getJSONP = function(url,callback,param) { return $.ajax({ url: url, dataType:”jsonp”, success:callback }); } $.getJSONP(“./hogehoge/getjson.php”t,onDataHandler) function onDataHandler(response) { //受信後の処理をここに } [/javascript] こんな感

    girled
    girled 2012/03/12
    JSONクロスドメインの絡みでJSONP化したかったので参考にした。これがわかんなくって昨日1日悩み続けた。だってChromeはAccess-Control-Allow-Origin効いたのにIEは効かないんだもの。
  • 今さら聞けないjQuery実行パターンまとめ :: 5509

    なんとなく使っているだろう.ready()メソッドについて詳細に見てみましょう。 .ready()メソッド .ready()メソッドという呼び方がパッとしない人もいると思います。こういうのです↓ $(function(){ // .ready()が呼び出されたときに実行されるハンドラ }); jQueryを実行する際のおまじないみたいなものですね。これの中にjQueryコードを書いていくとページロード時(Documentの読み込みが完了時)に実行してくれます。 何気なく使ってる人も多いと思いますが、実際のところこれは何?ということで、少し掘り下げてみましょう。 .ready()を使う際の形式 jQuery APIによれば、以下の3つが.ready()として同じように使えるようです。 $(document).ready(handler) $().ready(handler) (推奨されていな

    girled
    girled 2012/02/04
    今さらながらIE9だとFancyboxとZENBACKがjQueryコンフリクト起こしてて表示がうまくできてなかったので呼び出し省略をやめて行うように対応した。IEェ。。。
  • "遅いブログパーツを高速表示する方法"を検証する | ゆっくりと…

    かん吉さんの記事 「遅いブログパーツを高速表示する方法」、すばらしいですネ。アフィリエイトをやっている人にとっては、とても興味を引く記事だと思います。ですが、紹介されているスクリプトは、中級以上の方が対象 とあるように、私のような初級者が知っておくべきことがあるはずです。 そこでまず私自身が中級者以上となるために、過去3回に渡り自分なりにブラウザの動作を勉強してきました。 ブラウザ動作の理解-レンダリングツリーの構築と描画のタイミング ブラウザ動作の理解-リフローとリペイント及びその最適化 ブラウザ動作の理解-レンダリングの負荷を測る そこから見えてきたのが、レンダリング・ツリー の役割りです。ブラウザの質は、ドキュメントとその見た目 (ビュー) の管理です。前者は、文書自体やその構成の管理に責任を負い、後者は、描画について責任を負う。そして、両者のコラボレーションによりユーザーに情報を

    girled
    girled 2011/12/13
    ブログパーツでcloseが抜けててiPhoneのSafariでうまく表示ができないやつ対策になるんじゃないかと思って調べ中。
  • [Javascript] nullとundefinedとfalseと0と空文字と

    大抵の、特に変数の型宣言を行わないタイプの言語では、型の異なる値の条件式は悩みの種です。 Javascriptもご他聞に洩れずというか、undefinedとnullが異なる分だけ更にややこしくなっているようです。 暗黙の型変換で痛い目にあわないよう、ちょっと実験してまとめてみます。 実験にはとりあえず、手っ取り早いので Jash を使用。 一緒に試してみるならば、こちらのBookmarkletをクリックしてコンソールに入力しながら読むとわかりやすいかもしれません。 nullとundefined。たまに「同じもの?」と聞かれることもあるので、とりあえず確かめて見ます。 >> null==undefined true あれ、同じでしょうか? >> null===undefined false もちろん違います。 しかし、== 演算子で比較する限りは「同じ」と言ってもよいようです。 では、実際は

    girled
    girled 2010/07/07
    nullとundefinedについて、なんとなく使い分けてるような分けて無い様な感じだったので調べてみたら面白かった。undefinedってなんか仏教的だな。虚無って感じが。
  • JavaScript初心者におくる24のグレイトなtips - 三等兵

    私が作ったわけではなく海外の記事です。自分も学習してみました。 phpスポーツ啓発日誌や、コカトリスさんや、アイスクレアームパラダイスさんのような、品質の良い訳は私にはできませんので見出しは意訳もしくは誤訳、文章は無視して訳してません。かつ、私がいろいろコードや文章つけたしてます。内容的にはほとんどズレてはないと思いますが、適当なのでおかしいところがあるかもしれません。 うっとうしい場合は原文をどうぞ。 24 JavaScript Best Practices for Beginners 1. 等価演算子で==使うなよボケ===だろナスチン野郎 ひぃぃぃ。 ==|!= だとねー、型は自動に変換されるんすよねー。ねー。 s = '1'; i = 1; alert(s == i); // true alert(s === i); //false えーと、==は「わし、数値も文字列も中身が一緒だ

    JavaScript初心者におくる24のグレイトなtips - 三等兵
    girled
    girled 2009/12/14
    面白かった。クライアントヘルシーなJSを書けるようになるとそれだけで実現できること増えたりして素敵かも。なかなか最近はJavaScript使ってないけど他の言語のプログラミングでも応用できそうな話もあって勉強になった
  • 1