サーバーサイドJavaScript総合
■ このスレッドは過去ログ倉庫に格納されています
とか見つからなかったので立てさせてもらいました クライアントJavaScript/JScriptについてはWeb制作板へどうぞ。 とりあえず俺は今頃Jaxerで遊んでみてます。 AJAJAって無くなったのかな? 公式らしきURLがwikipedia転送になってますね その他にもいろいろ実装あるので、>>2 以降で軽くリンクとか書いて行きます >>212 ttps://github.com/joyent/node/wiki/modules#wiki-async-flow >>213 ありがとう こういう便利なものがあるとはしらなかった でも、やっぱり、C#4.5を使いだすと、こういうやつですら面倒になる 質問があるのですが テキストボックス内でそのページのURLを出すことはできないでしょうか? どうしてもタグなどがエスケープされてそのままのスクリプトが出てしまいます location.hrefではどうしてもできませんでした よろしくお願いします 過去ログを表示するためにこういう感じのコードを組んだんだが、dotCloudのようなところだとあまりに遅すぎて死にそうになる まとめて送れば解決しそうなんだが、ドキュメントを読んでもlazyで読み込みが完了したときにコールバックさせる方法がわからない lazyでドキュメント完了時に呼びさされるイベントとかあったら教えてほしい var state = fs.stat(path,function(err,state){ if(err) return; var stream = fs.createReadStream(path); new lazy(stream) .lines .forEach(function(line){ socket.json.emit("req pastlog",CreateMessageFromText(line.toString())); }); }); 小さいシステム2・3個nodeで作ってみた。普通に使えたけど、複雑なシステムになった時にどーなるかなと思ってる。 皆はどうですか? >>220 node.jsで動くなり茶スクリプト作ったけど、あんまり使いたくないねえ そういや、匿名関数でこういうことやると落ちるんだが、うちだけ? function foo(){ this.Add = function(){ console.log("aaa"); } function GetRoomList(callback){ var stream = fs.createReadStream($room_configure_file_name); new lazy(stream) .lines .forEach(function(line){ this.Add(); }) }); } } 括弧の対応が取れてないのはともかく、 上のthisと下のthisは同じものにならないんじゃないの? ああ、本当だw 入れ子の無名関数のthisはどこにも参照されていない筈 >>222 >>223 そうなの? C#ではこういう書き方ができたから、通ると思ったんだが… JavaScriptだとダメなの? >>224 >>221 を書いた人なの?そもそもjsのプログラムとして完成させてくれないと何をしたいのかわからん これこのままじゃ、fooって関数を宣言してるだけだよね?GetRoomListは宣言してるけど使ってないし何なの? >>225 すまん 肝心な部分が抜けてた function foo(){ var collection = {} this.Add = function(line){ //lineの内容に応じた処理を行う //collectionに追加 } function GetRoomList(callback){ var stream = fs.createReadStream("foo.txt"); new lazy(stream) .lines .forEach(function(line){ this.Add(line); }) }); } GetRoomList(); } いやだからさwまずは文法エラーが出ないようにしろよw 括弧の対応とれてないだろうがw 無理やり文法エラーなおして、this.Add()の関数になにか適当な処理いれて、 最後にfoo()を呼び出すようにすれば俺の環境だとちゃんと動くぞ 上のthisと下のthisに違うものが入るかと思ったが、両方とも同じグローバルオブジェクトがはいるんだな forEachの仕様をよく理解してなかったわ var lazy = require("lazy"); var fs = require("fs"); function foo(){ var collection = {} this.Add = function(line){ //lineの内容に応じた処理を行う //collectionに追加 console.log(line); } function GetRoomList(callback){ var stream = fs.createReadStream("roomlist.txt"); new lazy(stream) .lines .forEach(function(line){ this.Add(line); }); } GetRoomList(); } $test = new foo(); 文法エラーを修正したが、こんなエラーが出る TypeError: Object #<Object> has no method 'Add' at C:\Users\xxx\Documents\WebChat\test.js:17:9 at EventEmitter.self.forEach (C:\Users\xxx\Documents\WebChat\node_modules \lazy\lazy.js:62:13) at EventEmitter.<anonymous> (C:\Users\xxx\Documents\WebChat\node_modules\ lazy\lazy.js:46:19) at EventEmitter.emit (events.js:93:17) at self.bucket.yield (C:\Users\xxx\Documents\WebChat\node_modules\lazy\la zy.js:152:18) at Function.<anonymous> (C:\Users\xxx\Documents\WebChat\node_modules\lazy \lazy.js:186:21) at self.bucket (C:\Users\rirufa\Documents\WebChat\node_modules\lazy\lazy.js: 158:21) at EventEmitter.emit (events.js:93:17) at ReadStream._emitData (fs.js:1365:10) at afterRead (fs.js:1347:10) fooは普通の関数じゃなくてコンストラクターなのかw それだと上のthisと下のthisは違ってしまうからうごかんわw this.Add = function(line){ の上に var self = this; とかいれて、 下のthisをselfに置き換えればとりあえず動くよw このforEachはArray.prototype.forEachかと思ったら、lazyモジュールが提供するforEachメソッドなのか javascriptの場合、コールバック関数内でthisが何になるかは、コールバックを渡した関数の仕様に依存することになるから 仕様がはっきりしない場合はthisは使えないと思ったほうがいいね varで変数宣言しないといけないのが、このスクリプト言語のムカつくところ。 varで宣言も別に悪くないと思うけどな。決めの問題で。 Pythonみたく代入した場所でスコープ決まったり、Rubyみたく変数名の表記で決まったり、それぞれルールがあるだけじゃね? なんでJavaScriptだけthisの意味が違うのが謎だ C#やC++とかだとthisはオブジェクトのインスタンス自身を表すことになってるのに、なぜかJavaScriptだけ別物 Javascripのthisのスコープが変るのは、 オブジェクト生成後にあとからメソッドが追加できるという自由すぎる言語特性ゆえ、 thisのスコープをJavaなんかと同様にしてしまうと、弊害があると考えられたから。 これ結構常識だと思うのだけど... meteor、設計思想が全然違うのな。 サンプルのleaderboard見てクラクラきた。 慣れると楽なのかな? twitterからjqueryを使ってJSONデータを抽出したいんですけれど、なかなか思うように行きません。まずコードを記します。 // コールバック関数 略 $("#twi").append('<li><div class="icon"><a href="https://twitter.com/'+ val.from_user +'"><img width="60px" height="60px" alt="'+ val.from_user +'" src=" ' + val.profile_image_url +'" /></a></div>'+ '<div class="text"><dl><dt><strong>ユーザー名</strong>: ' + val.from_user + '<br/><strong>投稿時間(GMT)</strong>: ' + val.created_at + '</dt><dd><strong>投稿文</strong>:<pre> '+ val.text +'</pre></dd></dl></div></li>'); //GMTをどうにか日本時間にしたい }); 略 //アクセス先のURL jQuery.getJSON('http://search.twitter.com/search.json?callback=?', //サーバーに送るデータ {q:'さとし+OR+ピカチュウ',//複雑なnot検索がしたい //AND検索は、クエリを「+」(スペース)で繋ぐ //OR検索は、クエリを「+OR+」で繋ぐ //NOT検索は、除外したいクエリの前に「-」をつける //フレーズ検索は、フレーズを「"」で囲む 略 ここにおいて、まずGMTを日本時間(JPN)に直すにはどうしたらいいのか。 そして複雑なNOT検索(例えばAという単語について、 BとCという単語が付属しているものを除外する。また単独のフレーズとして DとFという単語を除外する。)をするにはどうしたらいいのか。 以上の2点について教えてください! 補足です。時間は Sat, 20 Oct 2012 01:27:30 +0000 という表記を 2012年10月20日(土) 10:27 としたいです。 すいません。クライアントサイドのスレと間違えました 相変わらず過疎ってるな ちょい前にNodeの1.0ブランチできたってね browserifyについて質問です。 たとえばページが10ページあって、Javascriptファイルが100個に分かれているとします。 * page1では、app1.js, model1.js, controller1.jsを使い * page2では、app2.js, model1.js, controller2.jsを使う などのように、そのページでしか使わないjsや、多くのページで使われるjsなどがあるとき、 browserifyでは、各ページ用に10個のjsファイルを生成するという認識であってますか? 受ける会社大丈夫? 下記の条件が全て当てはまる会社にご注意下さい。 ・IT系 in tokyo ・「社名 労基」でググると過去の2chスレが出てくる ・転職会議で2.5点 誰でも簡単にネットで稼げる方法など 参考までに、 ⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。 グーグル検索⇒『半藤のブブイウイウレレ』 JO2HHUMOH2 プログラミングを誰でも習得できる方法は、「前場アキドルのプログラミングマスター方法」というブログで見られるらしいよ。ネットで調べると見られるらしいです。 44UUG ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる