JavaScriptスレ2

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2013/09/03(火) 01:31:16.01
oh...
別板の 753 が…
953デフォルトの名無しさん:2013/09/03(火) 04:46:20.75
>>949
テストってgrunt.js+mochaとかでいいのか
954 忍法帖【Lv=40,xxxPT】(1+0:5) :2013/09/03(火) 22:05:25.02
テレッテッテッテ、テッテ、テレレレ〜♪
    ∧,_∧        ∧,_∧
    ( ;`ω;´) ♪     (´・ェ・`)
   /    \  ♪   /    ヽ 
   レ'\  γ∩ミ γ∩ミ.  /し´ 
      > ⊂:: ::⊃⊂:: ::⊃〈   ペチペチ
.     /  乂∪彡 乂∪彡 \ ペチペチ

(゚Д゚)ニャ〜 (゚Д゚)ニャ〜 (゚Д゚)ニャ〜 (゚Д゚)ニャ〜
955デフォルトの名無しさん:2013/09/12(木) 02:07:48.36
window.location.search以外でwindow間で値を渡すにはどうやれば良いですか?
956デフォルトの名無しさん:2013/09/12(木) 02:26:34.59
ブラウザならweb制作管理板の方がいいと思うよ

+ JavaScript の質問用スレッド vol.108 +
http://toro.2ch.net/test/read.cgi/hp/1378462421/
957デフォルトの名無しさん:2013/09/14(土) 14:05:38.51
jshintでチェックするとconsole.logをwindow.console.logみたいにトップのオブジェクトを省略できないんだけど
律儀に省略せずかくべきなの?
958デフォルトの名無しさん:2013/09/14(土) 15:24:11.09
>>957
ちゃんと設定すればいいだけ
959デフォルトの名無しさん:2013/09/14(土) 18:29:52.02
Windowsに今日npmからJShintを入れました
プロジェクト毎に共通化したいので.jshintrcで管理したいのですが
C:\Users\takahashiに.jshintrcを入れて
jshint test.jsってやってもjshintrcの内容が反映されません
やり方間違ってますか?

.jshintrcの内容は
{
"maxlen":1
}
です
960デフォルトの名無しさん:2013/09/14(土) 18:35:57.46
>>959
Linux使え。
961デフォルトの名無しさん:2013/09/17(火) 22:28:16.66
ふと気づいたんだけど
今ってブラウザがどんどんサンドボックス化されてるじゃん?
で、GoogleがBlinkで実現したいことの1つにiframeの別プロセス化があるんだけど

今の仕様だと同オリジンだと勿論互いのwindow触れるし、
そうじゃなくてもpostMessageで発生するmessageイベントからは
別オリジンのwindowコンテキストも取得できることになってるから
相当難しくないかな?

それでもし、セマフォみたいな仕組み導入するんなら、
部分同期Workerが可能になると思うんだけどどう?
962デフォルトの名無しさん:2013/09/17(火) 22:59:39.67
>>961
プラグインの別プロセス化とかUIプロセスとタブプロセスの分離とか、そういうの散々やってきてるのに、
スクリプトエンジンのプロセス間呼び出しとか、手間はかかっても今更致命的な障害になるワケがないと思うんだが。
963デフォルトの名無しさん:2013/09/18(水) 00:19:28.99
Workerってメッセージングにコストかかるじゃん
それでも別「スレッド」同「プロセス」だから
メモリ共有できるからバッファの低コストな受け渡しとか出来る

プラグインとかは当然変数やメモリ共有してないでしょ
でもiframeは>>961の仕様だからそれが必要
もしプロセス間通信で変数のセマフォを実現するとなると相当な負担になると思う
964デフォルトの名無しさん:2013/09/18(水) 00:58:42.36
別プロセスでもメモリ共有はフツーにできるし、してる。
WindowsでもUnix系OSのFreeBSDやLinuxでもFreeBSDを改造して作られたMacOSでも出来る。

プラグインなFlashのExternalInterfaceみたいなのもある(さすがにコレはちと効率が不安だが)。
Chromeでは機能拡張も別プロセスで走ってるし…
965デフォルトの名無しさん:2013/09/18(水) 01:59:26.26
>>964
できる出来ないの問題じゃなくて排他処理が高コストでしょ
拡張機能もページ内で動くのはページ内にスクリプト埋め込むことで動いてんのよ
966デフォルトの名無しさん:2013/09/18(水) 02:04:39.06
>別プロセスでもメモリ共有はフツーにできる
何のための別プロセス化か分からんなw
そこまでするのなら別プロセスにしなくていいでしょ。
だから結局>>961はできない、現にやってない。
967デフォルトの名無しさん:2013/09/18(水) 03:06:18.21
>>965
スレッド間でも排他は要るし、プロセス間用でスレッド間用の排他する事もよくあるくらいには微妙なコスト差なんだが。
拡張機能の方は実装しらんけど、一切プロセス間通信してないってことはないと思うって話な。
ページに埋め込んでるのは知ってるよ。
>>966
同時にマップ出来るメモリ空間の拡大とか、トラブル起こした場合にプロセスごと殺す手が取れるとか。
というかだな、「現にやってない」は「出来ない」を意味しないって事を言いたかったんだが。
968デフォルトの名無しさん:2013/09/18(水) 04:53:03.62
アホはもう黙っとけって、、
共通に作業する領域を共有するのと、
windowオブジェクトツーカーは次元が違うんだよ。
ノータリンだな。
969デフォルトの名無しさん:2013/09/18(水) 06:01:33.13
思い込みで不可能とか断定するほうがノータリンだろ…
970デフォルトの名無しさん:2013/09/18(水) 06:38:30.76
>>969
誰が何を不可能だって言ったの?
971デフォルトの名無しさん:2013/09/18(水) 06:54:45.60
>>961はどう見てもworkerのことを話題にしたかっただけで
プロセス間云々はどうでもいいというかスレチ…
972デフォルトの名無しさん:2013/09/18(水) 08:10:44.57
frame 単位じゃなく domain 単位で別プロセスじゃないの?javascript の場合。
973デフォルトの名無しさん:2013/09/18(水) 16:25:23.32
>>966
これどういう意味?
プロセス間通信でshmemって別に普通だよね?
974デフォルトの名無しさん:2013/09/18(水) 16:46:11.45
>>973
セキュリティのために別々プロセスにするんだからshmemで密結合にしたら意味ないってことでしょ。
975デフォルトの名無しさん:2013/09/18(水) 16:59:42.12
>>972
ドメインが違ってもwindow触れる手段があるからそれどうなるのってことでしょ
976デフォルトの名無しさん:2013/09/18(水) 17:19:35.32
勉強得意なやつ同士の議論は深堀して戻ってこなくなる
977デフォルトの名無しさん:2013/09/18(水) 17:25:55.89
Workerの別ドメインへのバッファ受け渡しって、現状どうなってるの?
978デフォルトの名無しさん:2013/09/18(水) 17:50:16.63
自分でソース読んできた。
post時にSerializeしてから、送信してるみたい。ArrayBufferも。
一見すると、コストかけてでもセキュリティを気にしてるように見える。

斜め読みなので、間違ってたらすまん。
979デフォルトの名無しさん:2013/09/18(水) 17:55:12.50
Worker-host間、またWorker-Worker間では
バッファ系オブジェクトのバッファ部分の所有権を「委譲」することが出来る。共有ではない。
つまりどういうことになるかというと、例えば100byteのArrayBufferを「委譲」したら、
プログラムからは元のは0byteになって、先に100byteの「新しい」ArrayBufferができるように見える。
内部的には参照の所有権を委譲してるだけだから低コスト。
これもWorker環境が同プロセスだからできること。
最初から共有メモリにバッファを置いておくなんてことは当然しないし。
980デフォルトの名無しさん:2013/09/18(水) 18:23:54.66
>>979
なあそれ譲渡って言うんじゃないの
981デフォルトの名無しさん:2013/09/18(水) 18:46:14.35
使われ方でも、仕組み的にも「渡す」より「委せる」の方が適切と考えて「委譲」を推したい。
982デフォルトの名無しさん:2013/09/18(水) 18:48:18.53
よし最初から全てのJavaScript用メモリは共有メモリに置こう!
マップしたまま放置すれば専有メモリとアクセスコストは大差ないし、
プロセス跨いだ所有権譲渡しない限りは管理コストも大差ない筈!
プロセス跨いだオブジェクトだけ別で管理すれば、その量が過剰でなければまぁ何とか!

ハンドル消費数とかバグの作り込みが怖いな。
983デフォルトの名無しさん:2013/09/18(水) 19:45:06.16
984デフォルトの名無しさん:2013/09/18(水) 23:46:03.27
ローカルで実行してるJavaScriptで自身のSCRIPT_NAMEを取得する方法ってありますか?
985デフォルトの名無しさん:2013/09/18(水) 23:49:36.18
スマホ向けのJavaScriptってES5に対応してますか?
986デフォルトの名無しさん:2013/09/19(木) 00:00:16.13
してる
987デフォルトの名無しさん:2013/09/19(木) 00:19:46.86
>>984
wsh なら WScript.ScriptName とか他は知らん
988デフォルトの名無しさん:2013/09/19(木) 00:38:11.07
url = [].pop.call(document.getElementsByTagName('script')).src
name = url.match(/.+\/(.+)\.js/)[1]
989デフォルトの名無しさん:2013/09/19(木) 01:24:38.20
>>988
ありがとうございます
タグ使ってないので無理でしたがグリモンでなら動いたので別口で参考にします

>>987
JavaScript単体ではdefinedになるのでやはり無理そうですね
990デフォルトの名無しさん:2013/09/19(木) 01:28:22.18
JScriptとJavaScriptは違うぞ
991デフォルトの名無しさん:2013/09/19(木) 01:32:20.96
>>990
お前はJavaScriptって言うときはなにを指してるの?
JavaScriptとECMAScriptも違いますよね
992デフォルトの名無しさん:2013/09/19(木) 01:38:09.87
JScriptつったらMSのECMAScript実装のことだろう
993デフォルトの名無しさん:2013/09/19(木) 02:33:40.89
MSIEのJavaScript実装はJScriptだったよな?
JScript自体がJavaScriptの方言だとしても、
JavaScript実装として使われてる分にはJavaScriptでよくね?

>>984>>989
JavaScript(またはECMAScript)自体にはそんな機能ないから、
「ローカルで実行」するホスト環境が提供してる機能を使うべし。
ホスト環境が何なのか書かないとドンピシャな回答は得られないぞ。
994デフォルトの名無しさん:2013/09/19(木) 02:38:57.34
ECMAScriptは仕様+αの拡張は許してる
その代表的名称がJavaScript

JScriptはESのどのバージョンにも準拠してない
だからまるきり別物
995デフォルトの名無しさん:2013/09/19(木) 02:53:06.46
http://msdn.microsoft.com/ja-jp/library/cc391896.aspx
MicrosoftR JScriptR (以下 JScript) は、Microsoft による ECMA 262 規格仕様の言語 (ECMAScript Edition 3) です。以前のバージョンとの互換性を含むいくつかの例外事項を除いては、JScript は ECMA 規格に完全に準拠しています。
996デフォルトの名無しさん:2013/09/19(木) 03:24:08.02
バグとか例外的仕様とかでIEはクソって認識から認めたくない人は認めないんだろうけど、
そんなこと言い出すと大半のブラウザはSGMLやHTMLに準拠してない事になるからな。
ECMAScriptに限らずC/C++とかだってそういう所があるし、原理主義も大概にしとけ。
997デフォルトの名無しさん:2013/09/19(木) 03:24:53.06
998デフォルトの名無しさん:2013/09/19(木) 03:27:41.41
他のブラウザならバグだけど、
IEならES非準拠のJScriptの仕様となってしまうのが問題だね。
999デフォルトの名無しさん:2013/09/19(木) 03:32:47.64
次スレ(統合先)

ECMAScript デス 4
http://toro.2ch.net/test/read.cgi/tech/1325448978/
1000デフォルトの名無しさん:2013/09/19(木) 03:33:44.95
ES3ならIE8くらいからかな
最近のJScriptは準拠してると言っても悪くないんじゃないかな
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。