質問: MC.Collection("Memo"); memo.insert({ title: title, content: content}) .done(function(insertedItem) { console.log('Insert is success!'); $("#title").val(""); $("#content").val(""); //display a dialog stating that the inserting is success $( "#okDialog_add" ).popup("open", {positionTo: "origin"}).click(function(event) { event.stopPropagation(); event.preventDefault(); getMemoList(); $.mobile.changePage('#ListPage'); }); }) .fail(function(err){ console.log('Insert failed!');}) ```
回答: > > 「初心者がJavaScriptもちゃんと書けないうちに、jQueryとかのライブラリに手を出すのは、いろいろすっ飛ばしていて、間違っている。まずは生のJavaScriptの書き方や概念を覚えるべきだ」 > > > これって、「とか」じゃなくてダイレクトにjQueryと、jquery.fnを取り巻くエコシステムの事を指してるんでしょ? 同じライブラリでもLodashはプログラミングのセンスがよくなる魔法のライブラリだから積極的に使っていくべきだし、他にもそういった類の利用者のスキルを引き上げるツールというものは多くある。 jQueryのエコシステムは確かに便利で、 知識が無くてもコピペでそれらしいのが作れちゃうから、 何か課題が出てきてもぐーぐるでjQueryライブラリを漫然と検索するだけ、 誰かの作ったjquery.fnのライブラリが無いと何も出来ず、そこから進めないコピペプログラマ止まりになっちゃうからネイティブJSを学習しろというのはわかる。 でも私個人としては別にネイティブJSがマストだとは思わない。 必要だと感じてから必要な分だけ学べばいい。 必要でないものを学ぼうとするとモチベーションがもたずに続かない。 「全てのエンジニアはC言語からやるべきだ」という似たような主張もあるけど、 それも下記のような反対意見がある。 「もう誰もが手動でメモリ管理しなければならない時代は終わった。 どうしてもPCの限界ギリギリのパフォーマンスを出さなきゃいけないケースに遭遇し、 必要だったり興味がある人間だけが学べばいい」 別にネイティブのJSをしっかり学習しようと言うのは殊勝な心がけだねと思うけど、 jQuery→JSへのダウングレードの仕方がわからん助けてはホンマこいつは... JSの文法やDOM APIに書かれた本を買ってきて勉強するべき。 その最終試験としてjQueryでぱぱっとやってる事をjQueryのソースコードをカンニングしたり、 ドキュメントを見ながら動作をエミュレートして同じモノを作り上げるという行為は勉強になる。 でもそこの部分だけをダイレクトに人に聞いて何の勉強になるの? 何も意味ないから、今回の勉強やめたら? 本当にJavaScriptのコアなスキルが必要になってから、必要なだけ勉強した方がよっぽど為になるし有用だと思うよ。