①var boxes = $(‘div’); ②var numbers = [1,3,4,6,8]; の違い – javascript jquery

質問:


お世話になります。


var boxes = $('div');//複数のjQueryオブジェクト?


var numbers = [1,3,4,6,8];//配列

のふたつがある場合、
それぞれの要素に対して処理する時は、

①の場合

boxes.each(function(){})

②の場合

$.each(ary,function(){})

と書くようにと、あるテキストに書いてあったのですが、
①と②にはどのような違いがあるのですか?

質問者: forest

gocho

①は$.fn.each、②は$.eachを利用しています

$.fn.each と $.each は似ているけれど、少し違う関数です
$.fn.each は1引数(function)で、$.each は2引数(array, function)です
eachできる値も異なります

$('div').each(myFunction)
^^^^^^^^
jQueryオブジェクトのみ

$.each($('div'), myFunction)
       ^^^^^^^^
       jQueryオブジェクト or 配列

jQueryオブジェクトにeachする場合、上の2つは必ず同じ結果になるのでどちらの記述をしても問題ありません
①の記述の方が短く、jQueryオブジェクトを使っていることがわかりやすいので好まれています

配列にeachする場合、上の記述は使えませんので、必ず②の記述をする必要があります


var $myDiv1    = new jQuery('div'); // $('div') と同じ
    ^^^^^^^          ^^^^^^
    インスタンス       クラス

var $myDiv2    = new jQuery('div');
    ^^^^^^^          ^^^^^^
    インスタンス       クラス

クラスをnewするとインスタンスが生成されます
クラスとインスタンスは異なるものなので、持っているメソッドも異なります

例えば
「jQueryクラス」は html という名前のメソッドは持ちません
(typeof $.html === 'undefined')
「jQueryインスタンス」は html という名前のメソッドを持っています
(typeof $('div').html === 'function')

今回は偶然「jQueryクラス」「jQueryインスタンス」 が両方 each という名前のメソッドを持っています

①は「jQueryインスタンス」のメソッド each
②は「jQueryクラス」のメソッド each

です

一般に、jQueryクラス と jQueryインスタンス をあまり区別をせず、両方を指して「jQuery」と呼ぶこともあります
なので、「①②のどちらもjQueryのメソッドですか?」という質問は少し答えにくいのですが、①②は異なるものに所属しているので「違う」と答えるのが一般的だと思います

出典

Related Posts:

2つあるHTML機能を一つにまとめたいです。 [クローズ済み] – javascript html ajax
質問: 失礼致します。 今それぞれ違う機能をもったHTMLファイル(JS機能含む)があります。 一つはサジェスト機能し検索することができます。2つ目はURL先で表示されているデータをテーブルに変換して表示する機能です。この二つを組み合わせていただけないでしょうか? 前者は検索してページを表示してもJSON形式のため見づらい 後者はテーブルに変換して見やすいがURL先をあらかじめ指定するため応用が利かない。 最終的に検索してテーブル表示させたいです。 画面遷移してもしなくても大丈夫です。 難しい部類に入るかと思いますがJavaScriptに詳しいかた何卒宜しく御願い致します。 初心者のため質問内容で分からない点があるかと思います。修正しますので遠慮なくおっしゃて下さい。 ---HTML--- <body> <form method="get"action="http://localhost:8180/api/stock/search?q=" Accept-charset="UTF-8"> <input type="text" id="ac2" name="car_name" > <input type="submit" value="検索"></form> </body> --javascript-- $(document).ready( function() { $("#ac2").autocomplete({ ...
amazonの価格取得 – javascript php api
質問: 、amazonの個別商品ページのURL(例)http://www.amazon.co.jp/dp/4822242633 を使って、商品価格だけを抜き出す場合、いろいろとやり方はあると思いますが、皆さんならどのように実現されますでしょうか。 教えて頂けますと、幸いです。 ※言語はPHPでお願いいたします。 ※amazon apiはリクエスト制限があるので、amazon api以外でお願いいたします。 ※商品価格とは以下のタグの部分です。 <span class="a-size-medium a-color-price offer-price a-text-normal">¥ 2,376</span> よろしくお願いいたします。 質問者: rei0328 <?php $html = file_get_contents("http://www.amazon.co.jp/dp/4822242633"); $dom = new DOMDocument(); @$dom->loadHTML($html); $xml = simplexml_import_dom($dom); $ret = $xml->xpath('//span[@class="a-size-medium a-color-price offer-price ...
目覚まし音も、“1分”遅れに鳴るのではなく、時間が来たら鳴るようにする方法について – javascript
質問: 下記のソースコードは、デジタルの目覚まし時計の目覚ましをセットして、時間が来るとデジタル時計は消え、目覚まし音とともに"アナログ時計"が現れるように設定したものですが、目覚まし音はアナログ時計が現れて"1分後"に鳴り始めます。セレクトの表示は、アナログ時計が現れるのと同時に切り替わります。どうすれば、目覚まし音も時間通りに切り替わるか、ご教示ください。 なお、音は出ないように設定しています。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> ...
デジタル時計は動いていないのに、更新される奇妙な現象 – javascript
質問: 下記のコードは、1分おきに"和暦"と"西暦"に切り替わる『(カレンダー機能付き)デジタル時計』で、 マウスポインターにくっついて来るものです。 しかし、問題があるのです。 デジタル時計は、一分ごとに更新されるのに秒針が動いていないのです。 このデジタル時計を動いている状態にするには、どうすればいいでしょうか。 <!DOCTYPE html> <html lang="ja"> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8"> ...
Javascript超初心者です – javascript
質問: 初めまして、質問なんですが サイコロを振り、出た目を2x+5して結果が100以下の場合もう一度2x+5をし、 結果が100を超えたらその結果と何回計算したかを出力しろ という問題なんですがランダムな数字を生成することはできました。 しかしその先で躓いてしまい、中々うまくいきません。 どなたかアドバイスを下さい。 よろしくお願いします。 とりあえず書いてみたソースです。 <html> <head> <meta charset="UTF-8"> </head> <body> <script> function GetRandomNumber() { ...
javascriptに関する質問 – javascript
質問: 以下のようにCMSのようなものを作っているのですが、id="ul"の内部にある「消す」や「追加する」のところだけ、javascriptが効きません。どのようにしたら、動きますでしょうか。 詳しい方、ご教示頂けると幸いです。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>記事投稿画面</title> </head> <body> <div ...
チェックボックス、jqueryのフィルタリング – jquery html5
質問: javascript: data=[ {"number":"4","shot":"3P","result":"成功"}, ...
angular.jsと競合関係にあるフレームワーク [クローズ済み] – javascript
質問: フロントエンドの勉強をしようと思っていますが、angular.jsを学ぶか、他のものを学ぶか迷っています。 angular.jsと競合関係にあるフレームワークと、できればそのメリットや特徴などを教えていただけると助かります。 質問者: 0xfffffff7 ここにまとまっていると思われるURLを幾つか記載します。 いかにして我々はフロントエンドに秩序をもたらそうとしてきたか JavaScript フレームワーク - ペパボのフロントエンドスタンダード 【JavaScript】なんとか.jsのお話(backbone.js、angular.js、node.js、alt.js、unserscore.js、prototype.js....etc) 出典
javascriptでスロットマシン – javascript
質問: 自分は今、Javascriptでスロットマシンを作っています。 そこで質問なんですが、スタートボタンを連打しますとリールの回転が速くなってしまいます。 回転速度は一定のままにしたいです。 そしてアタリ、ハズレの判定が消えません。 どうしたらよろしいでしょうか。 よろしくお願いします。 Javascript //左リールの制御 function a1() { //aにHTMLから取得した数字を代入 var a=document.getElementById("su1").innerHTML; //文字列のiを数字に変換し1を足してxに代入 var x=parseInt(a)+1; ...
このコードを coffee script に変換していただきたいです – javascript coffeescript
質問: タイトルの通りです。このコードは coffee scriptでどう記述されるのでしょうか。 よろしくお願いいたします。 var app = angular.module('sampleApp', ); function MyController($scope) { $scope.foo = "" $scope.lastSubmitted = "" $scope.submit = function() { ...
ただのリスティング運用者がグーグルから次のように言われて何をすれば良いでしょうか? – jquery
質問: 皆さま、お世話になります。また予め御礼申し上げます。 HPをリニューアル致しました。そこで のような「機能していないリンク先」つまりプログラムに機能していないリンク先が有るよ、と言われ、広告とソースが連動せず広告が表示出来ないで困っているのですが、平気でプログラムのド素人さんに難しい事を言ってくるグーグルの社員さん達の言う通りにするには何をすれば良いのでしょうか?(尚、同時並行でホームページ業者にも依頼をしています。) グーグル社員さん曰く、HPに富んでCTR+SFT+Iキーを押せ。⇒Networksというところが有るからそこでクリックしながらF5キーを押せ。すると赤い文字が見えるのだろう。あれを修正すればいいんだよ。との事ですが、ど素人の私に何かアドバイス、ヒント、ずばりお答えでも頂けますと 幸いです。(下記F5キーを押した後の図) 質問者: Kentaro Tomono take88 F5キーを押した後の図、で 赤字になって部分ですが、ajax-loader.gif というファイルにアクセスしたけど、ファイルが見つからないよ、という意味のエラーです。 ajax-loader.gif というファイルをホームページのサーバーの 所定の場所にコピーすれば良いと思いますよ。 出典
Inappbrowserの表示について – javascript monaca html
質問: Inappbrowserを使う際、以下のような実装方法がわかりません。 是非、ご教授頂ければと思います。 ・下層面のヘッダー部分を残した表示方法 ・表示した後、アプリ側で用意したフッターを表示する方法 アプリ内ブラウザである事をユーザに伝えるには、上記のような工夫が不可欠かと思います。 例えば、リンク集の特定サイトをクリックした際、アプリ内ブラウザで表示する際、アプリ内で表示されている事が認識できませんので・・・。 また、Inappbrowserを使った際、location=yesを使うと、かなり見栄えの悪い<>と×が出てしまいます。 これを修正する方法も、ご教示頂けるとたすかります。 出来れば、実例があると助かります。 (どなたかのアプリで実装されていたら、インストールして確認させて頂ければと思います) よろしくお願い致します。 質問者: kenji ご利用されているプランなど、前提条件が分かりませんが2つほど…… InAppBrowserはMonacaが採用しているCordovaプラグインです。 Cordovaプラグインが提供しているUIが目的に沿わないのであればWebViewを表示するプラグインを自身で作るか、 sandbox属性を付与してiframe内で表示するかどちらかです。 アプリにもよると思いますが、 iframeであれば難しいことはありません。 ですが、あまり見知らぬWebページを徘徊させるのは危険です。 念のためsandboxを付けるのが無難かと思います。 プラグインを作成する方ですが、 MonacaでやるならGoldプラン以上のアカウントが必要です。 ……そもそもプラグインを作成できる能力があるのであれば 素直にCordovaで開発することをお勧めします。 追記 ちなみに採用しているcordovaプラグインはこちらになります Monacaのドキュメントはこちらです。 どういったWebページを表示するのか分かりませんが ご自身が管理されているWebページのみを見せるのであれば ツールバーを非表示にしてしまってWebページでUIを作り ハッシュやリクエストを付けてURLをアプリ側で読み取りながら制御することも可能です CordovaはMonacaに比べて更に敷居が高いと思いますし Cordovaプラグインを作成するとなるとJavaやObjective-C or Swift or Swift2の知識も必要です。 時間と手間暇との相談になるかと思いますが、 何を採用、優先して、どのように実現するかを明確にすると詳しくアドバイスなどを求められるかと思います 出典
monaca クイズアプリについて – javascript monaca css
質問: http://matorel.com/archives/754 こちらのサイトも参考にしてクイズアプリを作ったのですが、いざandroidへダウンロードし試してみると、PC上だとできるのですが選択肢のボタンが改行されなくて横に伸びてしまいます。 よって選択肢のボタンが画面外へ行ってしまいます。 どうすればよろしいでしょうか? LGL23を使用しております。 質問者: 田中太郎 実装はGitからプロジェクトをインポートしたのでしょうか? リンクだけではなく問題のコードと、 スクショなどを質問文に記載なさると回答もつきやすいかと思います。 本題ですが、<ons-row>で<ons-col>とボタンを4つ纏めて括っているものを、2つずつで括ってはどうでしょうか? おそらくMETAの記述がリンク先と違うのでons-rowで指定した行が優先されて1行に纏められているものと思われます。 出典
変数の値が増えたか減ったかの判定方法 – javascript swift php
質問: Swiftで実装したいのですがロジックが応用できればどんな言語でも構いません。とある変数の値(数字)が動的に変わるのですが、その変数の値が増えたのか減ったのかで処理を分岐させたいと思っています。コードは下記のような感じです。 if(変数の値が増えた){ print("変数の値が増えた!") }esle if(いや、変数の値が減った){ print("変数の値が減った!") } 実装の方法が思いつきません。アドバイスいただければ幸いです 質問者: ryosuke-hujisawa 変更前の値と変更後の値を配列にとって配列の最初と最後を比較することで解決しました 出典
TODOリストの値がクリアされない、ストップウォッチが表示されない – javascript monaca html
質問: お世話になります。よろしくお願いいたします。 Monacaで日々の運動記録を作ろうと思っています。http://docs.monaca.mobi/cur/ja/sampleapp/samples/todo/ 新規作成し、TODOリストを読み込みました。 そのまま携帯と連携して動作させたところ、 Addした後のデータがクリアされず、 前回の値が保持されたままになってしまっています。 これは、元の提供のデータがおかしいということでしょうか? また、メモ帳とストップウォッチを使い 行った時間を記録していきたいと思っています。http://www.red.oit-net.jp/tatsuya/java/stopw.htm 上記を参考に、HTMLに組み込んでも動きませんでした。 良い勉強サイト等ありませんか? 作ろうとしているものとしては、 TOPぺーじにA,Bの画像2つ、ボタン2つ ボタンをおしたら、それぞれのHTML(A,B)に移動 A,Bそれぞれ、Aの画像とストップウォッチ、Bの画像とストップウォッチがある (カウントダウン形式) 終わったら、リストに結果を保存 TOPページは作れます。 ボタンをおしたらそれぞれのHTMLに移動も可能(なはずです) ストップウォッチの表示がどうにも上手く行きません。 質問者: かろこ MonacaのサンプルのToDo Appのことだと仮定します。 このサンプルはToDoをAddした後に値のクリアをしていないので値が残っています。 Addした後に値をクリアしたい場合は、自分でクリアする処理を実装しましょう。 ストップウォッチの件ですが、せめてソースを提示して頂けないと 何が原因で表示が上手くいっていないのか回答することができません。 出典

You Might Also Like

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です