Slide at #nodefest

フォームからGETしたときに値が空のパラメータがクエリー文字列に入るのが嫌だ。 値が空のパラメータにも意味があるっていうのなら話は別だけど、大抵意味がないわけよ。意味がないものでURLが長くなるのが嫌なわけよ。 それってなんとかならないかなと思って調べていたら、jQueryにいいメソッドを見つけた。.serialize()ってやつだ。これはフォームデータ集合をクエリー文字列で返すやつなんだけど、これを使えばフォームによるGETをJavaScriptでエミュレートできるわけね、こんな感じで。
JavaScriptで作った配列の順番を特定の順番に入れ替えたい時があったので、ソートして入れ替える方法を調べました。 sort関数 ソートする関数が用意されていますので、sort関数を使います。パラメーターを入れないとアルファベット順になります。 //配列 var station = ["Shinjyuku","Ikebukuro","Shibuya","Ueno"] //配列をソート station.sort(); //出力用 alert(station); // Ikebukuro,Shibuya,Shinjyuku,Ueno ちなみに配列の中身が数字の場合だと・・・ var number = [50000,40,900,3000] number.sort(); alert(number); // 3000,40,50000,900 アルファベット順なので、このような並びになります。
var a, b; a = 0; b = a; b = 5; console.log(b); // 5 console.log(a); // 0 (aは変わらない) var c, d; c = [0,1,2]; d = c; d[0] = 5; console.log(d) // [5,1,2] console.log(c) // [5,1,2] (cも変わる) 値渡しと参照渡しについて理解されている方ならなんの問題もないですが、これは上のコードを見て ***??????***となった方向けの記事です。 結論から言うと、Javascriptにおいて プリミティブ型は値渡し、オブジェクト型は参照渡しとなります。 ざっくり言うと、値渡しはその値そのものの情報を別の変数に渡していて、参照渡しはメモリ上のどこを参照しているかの情報を別の変数に渡しているか、という違いですね。 ちなみに、Javasc
var array1 = [10, 20, 30, 40, 50]; var target = 30; //要素を削除する array1.some(function(v, i){ if (v==target) array1.splice(i,1); }); console.log(array1) //=> [10, 20, 40, 50]; /* * 連想配列から特定の要素を排除したいときにも便利 */ var array2 = [ {id:1, name:"hoge"}, {id:2, name:"test"}, {id:3, name:"hello"}, {id:4, name:"world"}, {id:5, name:"hoge"}, {id:6, name:"test"}, {id:7, name:"hello"} ]; var targetId = 3; array2.some
jQuery は機能が豊富なので、しばらく使わないと忘れてしまう。 ここでは、jQuery と配列の関係に絞って目的別に逆引きできるようにしておく。 配列から jQuery オブジェクトを作成 $ 関数に渡せばOK $([1,2,3]) NodeList のような配列っぽいものを渡しても解釈してくれる。 $(document.getElementsByTagName("div")) // $("div") と同じ ※内部的には setArray メソッドが呼ばれてるが、外から使うことは稀。 jQuery オブジェクトを配列のように扱う 要素数を取得する length プロパティを使えばOK。 $("div").length // document.getElementsByTagName("div").length と同じ jQuery のメソッドを使って操作する限りは、適切に lengt
14のjQueryベストプラクティス 原文:14 Helpful jQuery Tricks, Notes, and Best Practices 良かったので翻訳してみました。かなりの意訳で、上手に訳せてない箇所も多いので詳しくは原文を参照してください。 1.メソッドはjQueryオブジェクトを返す ほとんどのメソッドがjQueryオブジェクトを返すのが重要です。 これにより次のようなメソッドチェーンが可能になっています。 $someDiv .attr('class', 'someClass') .hide() .html('new stuff'); jQueryオブジェクトを返すのがわかっていれば次のように分割して書くことも出来ます。 var someDiv = $('#someDiv'); someDiv.hide(); 次のように一行で書くことも出来ます。 var someDiv
Webサイトのトップページで表示するお知らせ情報など、レイアウトの都合上、長い文字列を特定の文字数でカットしたいことはよくあることかと思います。 そんな際にjQueryを使って文字列を任意の文字数でカットして、末尾に「…」などの追記情報(これも任意の文字列)を追加するやり方をシンプルなスクリプトで実装する方法をご紹介してみます。 【テキストのみ】 jQueryで文字列を特定の文字数でカットして末尾に「…」などを追加する方法 まずは実装するHTMLソースが下記のような構成だったとします。 ◆HTML <ul> <li>このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です。このダミーテキストは文字数カット用です
Backbone.Collectionは本格的に使ったことがないです^^; ほんとの入門になります。 Backbone.Collectionとは CollectionはModelの集合を扱いたい場合に使います。 前回は電話帳を作ろうとしていたのですが、 電話情報がModelであって、それを束ねる電話帳がCollectionとなります。 また、CollectionはModelの集合に順序をもたせることができます。 Backbone.Collectionの使い方 前回作ったソースに追記して、Collectionを定義します。 var Address = Backbone.Model.extend({ defaults: function(){ return { language: 'jp' }; }, initialize: function(){ _.bindAll(this); this.
対象読者 JavaScriptの基本をある程度理解している方 テストコードをこれから書こうと考えている方 JavaScriptのテスティングライブラリの分類 JavaScriptには、テストを記述するためのライブラリが多く用意されています。ライブラリには、大きく分けて「テスティングフレームワーク」と「アサーションライブラリ」があります。まずはこの2種類の違いについて説明します。 テスティングフレームワーク テストを記述する関数群を提供し、それらの関数を使って書かれたテストの結果を判定、集計した上で結果を表示する機能を持ちます。ブラウザでのテストの場合、ブラウザ上でグラフィカルにテスト結果を表示することもありますし、サーバサイドのJavaScriptであるNode.js向けにはコマンドラインで実行し、結果を表示する機能も持ちます。 アサーションライブラリ テスティングフレームワークは、テスト
object.once(events, callback, [context]) object.listenTo(other, event, callback) object.stopListening([other], [event], [callback]) Backbone.Model Backbone.Model.extend([properties], [classProperties]) Backbone.Model を継承した新しいモデルを作ります。 properties インスタンスメンバを定義します。 var User = Backbone.Model.extend({ say: function () { console.log("Hello."); } }); var user = new User(); user.say(); //-> Hello. classPr
最終更新日: 2020年11月7日 Vue.js とは?Vue (発音は / v j u ː / 、 view と同様)はユーザーインターフェイスを構築するためのプログレッシブフレームワークです。他の一枚板(モノリシック: monolithic)なフレームワークとは異なり、Vue は少しずつ適用していけるように設計されています。中核となるライブラリは view 層だけに焦点を当てています。そのため、使い始めるのも、他のライブラリや既存のプロジェクトに統合するのも、とても簡単です。また、モダンなツールやサポートライブラリと併用することで、洗練されたシングルページアプリケーションの開発も可能です。 あなたが Vue についてもっと深く学ぶ前に概要を知りたいのなら、中核となる原則とサンプルプロジェクトを元に説明するビデオを作成しているので、それを見るとよいでしょう。 あなたが経験豊富なフロントエ
The Backbone FrameworkMarionette simplifies your Backbone application code with robust views and architecture solutions. Download v4.1.2View Docs Organize your app in terms of small Views. Marionette makes it easy to compose rich layouts out of small components Show a sorted filtered list without breaking a sweat. Have a massive collection? Want to add or remove an item? No worries! Learn to love
それぞれ、このシリーズの後続の回で詳しく触れていきますが、Application、AppRouter、ControllerはViewやModelの間を取り持つ機能を担っています。ItemView、CollecttonView、CompositeView、Region、Layoutはそれぞれ異なった役割で、View周りのコーディングに役立つ機能を持っています。 Marionette.jsにできること Marionette.jsから得られる恩恵は大小さまざまで、細かいものを挙げていくときりがないほどですが、大きなものを挙げるとすれば、次のような点があります。 モジュール化のサポート 開発者が書かなければならないコード量の減少 機能の部分的な利用 モジュール化のサポート Marionette.jsの機能の中で大きなものとして、モジュール化のサポートがあります。モジュール化というのは、ある機能を表
JavaScriptのフレームワークとしてもはや知らない人はいないであろうBackbone.js。 Backbone.jsではviewを自ら一つ一つ定義し、render処理を自前で書かなくてはならないため、コード量が膨大になります。 (その代わりに、コードの中にブラックボックスが無くなり、いかなる場合にも対処しやすいという利点はあります。) そんなコードの肥大化を防ぎ、全体の見通しを良くしてくれるものとして、Marionette.jsがあります。Marionette.jsについて書きたいと思います。 まず、Marionette.jsを導入するためには以下のライブラリを読む込むことが必須です。 jQueryunderscore.jsbackbone.jsこのような順で読み込ませるとうまくいくと思います。 <script type="text/javascript" src="http://c
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く