タグ付けされた質問 「javascript」

ECMAScript(JavaScript / JS)とそのさまざまな方言/実装(ActionScriptを除く)でのプログラミングに関する質問。このタグが単独で使用されることはほとんどありませんが、ほとんどの場合、[node.js]、[jquery]、[json]、および[html]タグに関連付けられています。

14
JavaScriptオブジェクトの値を合計する方法は?
オブジェクトの値を合計したいのですが。 私はそれがちょうどあるであろうところにPythonに慣れています: sample = { 'a': 1 , 'b': 2 , 'c':3 }; summed = sum(sample.itervalues()) 次のコードは機能しますが、多くのコードです。 function obj_values(object) { var results = []; for (var property in object) results.push(object[property]); return results; } function list_sum( list ){ return list.reduce(function(previousValue, currentValue, index, array){ return previousValue + currentValue; }); } function object_values_sum( …

7
HTMLでhrefの代わりにJavaScript関数を呼び出す方法
HTMLのモックアップがあります <a href="javascript:ShowOld(2367,146986,2)"><img title="next page" alt="next page" src="/themes/me/img/arrn.png"></a> リクエストを送信したときにサーバーから応答を受け取りました。 このモックアップを使用して、コードをサーバーに送信するAJAXリクエストの応答として取得しました。 さて、すべてが順調ですが、リンクをクリックすると、ブラウザはリンクとして関数を開きたいと思っています。クリックした後、アドレスバーが次のように表示されます。 javascript:ShowOld(2367,146986,2) これをFirebugで実行したい場合は、ブラウザのURLを意味します。誰かがリンクをクリックすると、ブラウザはブラウザでそれらを開こうとするのではなく、DOMにすでにロードされている関数を呼び出そうとします。

4
Javascriptonclickイベントを含むHTMLアンカータグ
Googleを使用すると、アンカータグでonclickイベントを使用していることがわかりました。 でより多くのGoogleのヘッダ部内のオプションは、通常のAタグのように見えますが、それはリダイレクトが、メニューを開けませんonclicking。通常使用する場合 <a href='more.php' onclick='show_more_menu()'>More >>></a> 通常は起動せずに「more.php」にshow_more_menu()移動しますが、そのページ自体にメニューを表示しています。グーグルのようにする方法は?

6
jQueryは文字列を見つけて置換します
ウェブサイトのどこかに特定のテキスト、たとえば「lollypops」があり、この文字列のすべての出現箇所を「marshmellows」に置き換えたいと思います。問題は、テキストが正確にどこにあるのかわからないことです。私は次のようなことができることを知っています: $(body).html($(body).html().replace('lollypops', 'marshmellows')); これはおそらくうまくいくでしょうが、私はできるだけ少ないHTMLを書き直す必要があるので、私は次のようなことを考えています。 文字列を検索する 最も近い親要素を見つける 最も近い親要素のみを書き換えます これを属性でも置き換えますが、すべてではありません。たとえば、で置き換えますがclass、では置き換えませんsrc たとえば、私はこのような構造になります <body> <div> <div> <p> <h1> <a>lollypops</a> </h1> </p> <span>lollypops</span> </div> </div> <p> <span class="lollypops">Hello, World!</span> <img src="/lollypops.jpg" alt="Cool image" /> </p> <body> この例では、「lollypops」のすべての出現箇所が置き換えられ、<img src="...同じままであり、実際に操作される要素は<a>と両方<span>です。 誰かがこれを行う方法を知っていますか?

9
約束から複数の値を適切に返すにはどうすればよいですか?
最近、特定の状況に何度か遭遇しましたが、適切に解決する方法がわかりませんでした。次のコードを想定します。 somethingAsync() .then( afterSomething ) .then( afterSomethingElse ) function afterSomething( amazingData ) { return processAsync( amazingData ); } function afterSomethingElse( processedData ) { } 私がアクセスしたいでしょう今どこ状況が生じる可能性があるamazingDataではafterSomethingElse。 明らかな解決策の1つはafterSomething、から配列またはハッシュを返すことです。これは、関数から返すことができる値は1つだけだからです。しかしafterSomethingElse、2つのパラメーターを受け入れて同様に呼び出す方法があるかどうか疑問に思っています。これは、文書化して理解するのがはるかに簡単なようです。 私がQ.spread望んでいるのと同じようなことをするがあるので、私はこの可能性についてだけ疑問に思っています。
86 javascript  promise  q 

12
プロダクションコードからconsole.logを削除する必要がありますか?
私は現在、コードのいたるところにこのJSステートメントを持っています: window.console && console.log("Foo"); これはまったく費用がかかるのか、それとも生産にマイナスの副作用があるのか​​疑問に思います。 クライアント側のログインをそのままにしておくことはできますか、それとも続行する必要がありますか? 編集:結局、私(そして他の誰か?)が思いつくことができる最良の議論は、ロギングメッセージを残してサーバーとクライアントの間で転送される余分なデータの量が無視できない可能性があるということだと思います。本番コードは完全に最適化する必要があります。クライアントに送信されるJavaScriptのサイズを減らすために、ロギングを削除する必要があります。

9
C#String.IsNullOrEmptyJavascriptと同等
String.IsNullOrEmpty(string)javascriptのC#と同等の文字列呼び出しを実行したいと思います。簡単な電話があると思ってオンラインで調べましたが、見つかりませんでした。 今のところ、私はif(string === "" || string === null)それをカバーするためにステートメントを使用していますが、むしろ事前定義されたメソッドを使用したいと思います(何らかの理由でスリップするインスタンスを取得し続けます) 等しい最も近いjavascript(またはjqueryがある場合はjquery)呼び出しは何ですか?

6
jQueryでない場合、Javascriptのドル記号は何ですか
私は数年前にJavaScript / jQueryプログラミングをいくつか行いましたが、再開したばかりです。当時、すべてのjQuery機能にドル記号が使用されていました。jQueryライブラリがインポートされていない場合、ドル記号は定義されていませんでした。 今日、私はJavaScriptライブラリのない完全に空のhtmlファイルでFirefoxを起動しましたが、ドル記号は何かを指しています。Firefoxコンソールを開いて「$」と入力すると、が表示され"function()"ます。 1)数年前にドル記号が割り当てられなかったのは正しいですか、それとも間違ったことを覚えていますか? 2)jQueryでない場合、ドル記号は何ですか?

6
Reduxで状態を更新した後にコールバックをトリガーする方法は?
Reactでは、状態はすぐには更新されないため、でコールバックを使用できますsetState(state, callback)。しかし、Reduxでそれを行う方法は? を呼び出した後、this.props.dispatch(updateState(key, value))すぐに更新された状態で何かをする必要があります。 Reactで行うように、最新の状態でコールバックを呼び出す方法はありますか?

7
webpackを使用してCSSとJSを別々に生成できますか?
私は持っています: バンドルしたいJSファイル。 CSSにコンパイルしたいLESSファイル(@importsを単一のバンドルに解決)。 私はこれらを2つの別々の入力として指定し、2つの別々の出力を持つことを望んでいました(おそらくextract-text-webpack-pluginを介して)。Webpackには、コンパイルを行うための適切なプラグイン/ローダーがすべてありますが、分離が気に入らないようです。 JSから直接LESSファイルを必要とする人の例を見てきました。 require('./app.less');Webpackにそれらのファイルをバンドルに含めるように指示する以外の理由がないなどの理由で、。これにより、エントリポイントを1つだけ持つことができますが、それは私には本当に間違っているようです-JSコードとは関係がないのに、なぜJSでLESSが必要なのですか? 複数のエントリポイントを使用して、エントリJSとメインLESSファイルの両方を渡してみましたが、複数のエントリポイントを使用すると、webpackはロード時にJSを実行しないバンドルを生成します-すべてをバンドルしますが、わかりません起動時に何を実行する必要がありますか。 webpackを間違って使用していますか?これらの別々のモジュールに対してwebpackの別々のインスタンスを実行する必要がありますか?JSに混合しない場合は、JS以外のアセットにwebpackを使用する必要がありますか?

9
Reactによるビッグリストのパフォーマンス
私はReactでフィルター可能なリストを実装しているところです。リストの構造は下の画像のようになっています。 前提 これがどのように機能するかについての説明です: 状態は、最上位のコンポーネントであるSearchコンポーネントに存在します。 状態は次のように記述されます。 {{ 表示:ブール値、 ファイル:配列、 フィルタリング:配列、 クエリ文字列、 currentSelectedIndex:整数 } files は、ファイルパスを含む潜在的に非常に大きな配列です(10000エントリが妥当な数です)。 filteredユーザーが少なくとも2文字を入力した後、フィルター処理された配列です。私はそれが派生データであることを知っているので、それを状態に保存することについて議論することができますが、それは currentlySelectedIndex これは、フィルタリングされたリストから現在選択されている要素のインデックスです。 ユーザーがInputコンポーネントに2文字以上を入力すると、配列がフィルタリングされ、フィルタリングされた配列のエントリごとにResultコンポーネントがレンダリングされます。 各Resultコンポーネントは、クエリに部分的に一致した完全なパスを表示しており、パスの部分的に一致した部分が強調表示されています。たとえば、結果コンポーネントのDOMは、ユーザーが「le」と入力した場合、次のようになります。 <li>this/is/a/fi<strong>le</strong>/path</li> Inputコンポーネントがフォーカスされているときにユーザーが上キーまたは下キーを押すcurrentlySelectedIndexと、filtered配列に基づいて変更が行われます。これにより、Resultインデックスに一致するコンポーネントが選択済みとしてマークされ、再レンダリングが発生します。 問題 最初はfiles、Reactの開発バージョンを使用して、十分に小さい配列でこれをテストしましたが、すべて正常に機能しました。 この問題は、files10000エントリもの大きな配列を処理する必要があるときに発生しました。入力に2文字を入力すると大きなリストが生成され、上下のキーを押してナビゲートすると非常に遅くなります。 最初は、要素に対して定義されたコンポーネントResultがなく、Searchコンポーネントの各レンダリングで、その場でリストを作成するだけでした。 results = this.state.filtered.map(function(file, index) { var start, end, matchIndex, match = this.state.query; matchIndex = file.indexOf(match); start = file.slice(0, matchIndex); end = file.slice(matchIndex + match.length); return …

1
Cookieとセッションとは何ですか?また、それらは互いにどのように関連していますか?
私はCookieとセッションを専門的に理解しようとしています。ブラウザがサーバーに接続すると、サーバーはブラウザに「phpsessid」を含むCookieをクライアントブラウザのCookieフォルダに「貼り付ける」ように「要求」することを知っています。 「phpsessid」ができたので、クライアントがサーバーに入ると、ブラウザはサーバーに「phpsessid」を送信し、サーバーはtmpフォルダーを調べ、一致するものがある場合は、ユーザーが持っているすべてのデータをロードします。このクライアントですが、私はプロセスに少し混乱しています。 セッションとCookieを作成するプロセス、つまり舞台裏で何が起こっているのかを理解するのを誰かが助けてくれれば幸いです。

17
16進数をRGBAに変換する
私のフィドル-http://jsbin.com/pitu/1/edit 簡単な16進数からRGBAへの変換を試してみたかったのです。私が使用したブラウザは、デフォルトとしてrgbを使用して色をレンダリングするため、farbtasticカラーピッカーを使用する場合は、16進値が生成する背景色を取得して16進値をrgbに変換します(デフォルトではrgb =単純な変換) )記号を, 1)に置き換えてみましたが、うまくいきませんでしたので、rgbからrgbaへの変換がどのように機能するかを確認しましたが、まだ問題があります。 jquery $('.torgb').val($('#color').css('background-color')); $('.torgba').val().replace(/rgb/g,"rgba"); 目標 編集: TinyColorは、私がここでやりたいことすべてを実行する優れた色操作jsライブラリです。私はあなたたちがそれを試してみたいかもしれないと思います!- https://github.com/bgrins/TinyColor

30
JavaScriptで配列内の要素を回転させる
JavaScript配列を回転させる最も効率的な方法は何だろうと思っていました。 私はこの解決策を思いつきました。正の値nは配列を右に回転させ、負の値nは左に回転させます(-length < n < length): Array.prototype.rotateRight = function( n ) { this.unshift( this.splice( n, this.length ) ); } 次に、次のように使用できます。 var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; months.rotate( new Date().getMonth() ); 上記の私の元のバージョンには欠陥があり、以下のコメントでクリストフが指摘しているように、正しいバージョンは次のとおりです(追加のリターンによりチェーンが可能になります): Array.prototype.rotateRight = function( n ) { this.unshift.apply( this, this.splice( n, …

5
「HelloWorld」WebSocketの例の作成
次のコードが機能しない理由がわかりません。JavaScriptを使用してサーバーコンソールアプリケーションに接続したい。次に、サーバーにデータを送信します。 サーバーコードは次のとおりです。 static void Main(string[] args) { TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 9998); server.Start(); var client = server.AcceptTcpClient(); var stream = client.GetStream(); while (true) { var buffer = new byte[1024]; // wait for data to be received var bytesRead = stream.Read(buffer, 0, buffer.Length); var r = System.Text.Encoding.UTF8.GetString(buffer); // write received …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.