トップページ⇒tech
175コメント68KB

JavaScript JScriptってどうよ

■ このスレッドは過去ログ倉庫に格納されています
0001Mr. JNGNG
ここでこっちへ逝くよう言われたのでこっちへ来てみました。
http://pc.2ch.net/test/read.cgi/win/1021566844/l50
JScript.Netなんてのもありますよね。
JScriptはブラウザのあるところならどこにでもあるので軽く知ってお
くと便利な気もするんですけど。


↓Windows スクリプト テクノロジのヘルプから引用

JScript
インターネット向けに特別に開発された Microsoft の強力な
スクリプト言語です。JScript.NET は Microsoft の ECMA
262 規格に準拠した次世代の言語です。ECMAScript Edition
4 と併せて現在開発が進められている JScript.NET では、完
全コンパイル済みコード、型付き変数および型なし変数、クラ
ス (継承、関数のオーバーロード、プロパティ アクセサなど)、
パッケージ、クロス言語のサポート、.NET Frameworks へのア
クセスなど、さまざまな改良が組み込まれています。


JavaScript関係の勉強ができる所
ttp://member.nifty.ne.jp/aya/
ttp://www.tokumaru.org/JavaScript/index.htm

Script Encoderの落とせる所
http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/msdn-files/027/001/789/msdncompositedoc.xml

Script Decoderの落とせる所(使ったことないです)
http://www.astalavista.com/hacking/win/scrdec.shtml
0002デフォルトの名無しさんNGNG
<XML>
 <SHINE>

  ,,,,,,,,,,,,,,,∧,,∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′,,,,,,,,,,ミ,,゚Д゚彡<  Delphiばんざーい
 UU"""" U U    \_________

 </SHINE>
</XML>
0003デフォルトの名無しさんNGNG
プロトタイプ方式ってよくわからん...
0004デフォルトの名無しさんNGNG
JavaScriptは便利だね。
ブラウザで動作させられるし。
ファイルへのアクセスが出来ればもっと便利なんだけどな・・・
0005デフォルトの名無しさんNGNG
これってweb製作板ネタじゃないの?
0006デフォルトの名無しさんNGNG
Rhinoとか、ブラウザ非依存の処理系って知名度
ないよね...
0007デフォルトの名無しさんNGNG
JScriptってVBScriptも含んでるんだっけ?
0008Mr. JNGNG
>>2

ご存じないのかもしれませんけどJavaScriptはclassを定義で
きるんです。
例えばどこにいてもWeb上にclass群を置いておけば再利用きる
んです。(インターネットを利用できれば)
外部読みこみの"*.js"のファイルは関数を投げ込んでおくのに
しか使えないわけではないです。
0009デルパイ氏ね ◆VB6.V49. NGNG
VBScriptも扱え
0010Mr. JNGNG
>>4

ちゃんとできます。
ここにも書いてあるんですけど。
http://pc.2ch.net/test/read.cgi/win/1021566844/l50


//class Horse
function Horse(name, age, isMale){
this.name = name;
this.age = age;
this.isMale = isMale;
this.toString = HorseToString;
}

function HorseToString(){//Horse classのメンバ関数toString
var str = this.name + "は" + this.age + "歳(" + ((this.isMale) ? "オス" : "メス") + ")";
return str;
}

//class Zebra extends Horse
function Zebra(name, age, isMale, stripeCount){
//スーパークラスのコンストラクタ呼び出し
Horse.call(this, name, age, isMale);
//追加されたメンバ変数の初期化
this.stripeCount = stripeCount;
}
var h = new Horse("Bill", 4, true);
var z = new Zebra("Jane", 3, false, 382);
var fso, file, fileName;

fileName = "utuda.txt";
fso = new ActiveXObject("Scripting.FileSystemObject");
file = fso.createTextFile(fileName, true, false);

file.writeLine(h);
file.writeLine(z);
file.close();

new ActiveXObject("WScript.Shell").run(fileName);
//参照を解除してごみにする。
fso = file = null;
0011デフォルトの名無しさんNGNG
クラスがなんぼ作れたところで
単体ではファイルもビデオメモリも操作できない言語は
やはりマウスストーカーで終わり
0012Mr. JNGNG
>>5
classとか継承とか言い出すと範疇を外れてしまうんです。
JScriptはWebだけじゃなくてWSHとかHTAとかFLASHとかいろんな所で使えますから。
0013デフォルトの名無しさんNGNG
正直、JavascriptをWebとは関係なくローカルで
走らせるのってあんまメリットない気がする
(ある意味mozillaはすごい。). 実行系を
事実上標準装備しているのはWindowsだけだし、
Windows上でOSの各種サービスを使うならVBScriptの
ほうがしっくりくる。構文とかはVBScriptより
JScriptのほうが好きだけど。
0014Mr. JNGNG
>>9
VBScriptについて詳しくないですし、私の知っている範囲で
はVBScriptは変数とかオブジェクトの宣言と同時に初期化で
きないので面倒なことになります。
0015デフォルトの名無しさんNGNG
>>10
それどっちかというとWSHの力だよな。
JavaScript、JScript、JScript.NETを
WEBブラウザで使うのかWSHで使うのか.NET Framework上で使うのか
とかはっきりしないと中途半端なスレで終わるような気がするけど。
しかもWEBブラウザを対象にするなら板違いだし、
WSHなら他にスレあるけど盛り上がってないし。
0016デフォルトの名無しさんNGNG
まれにみる良スレ
でもsage
0017デフォルトの名無しさんNGNG
このスレはJScript.NETのスレになりました
0018hc2 morf ◆8XVajy8s NGNG
HSPスレを見る限りではJScript.NETの情報を求める声が多かった。
なぜHSPスレでJScript・・・?
0019デフォルトの名無しさんNGNG
ECMA262のレベルのオブジェクト指向のやり方って、クラス方式じゃ
なくて、プロトタイプ方式じゃないの?
>>10 のコードもぱっと見でそんな感じするんだけど。
JScriptでなんか構文の拡張とかあったの?
0020デフォルトの名無しさんNGNG
JavaScript > つまらん
JScript+WSH > 将来性なし+制限多し
JScript.NET > ウマー
0021Mr. JNGNG
>>13
Webとは関係なく走らせるんじゃなくてWebでもWSHでも
FLASHでもHTAでも再利用可能なオブジェクトを作成で
きるといいたいわけです。
0022デフォルトの名無しさんNGNG
>>19
Javaに近い構文のクラス定義が出来るようになったよ
0023デフォルトの名無しさんNGNG
>>21
無理だろ。
0024デフォルトの名無しさんNGNG
Win板のWSHスレで既出なんだけど、こういうスレにありがちな
「プログラムできました」とかいって全コードを載せるのは控えて欲しい。

http://pc.2ch.net/test/read.cgi/win/1009175619/964-965
0025デフォルトの名無しさんNGNG
>>24
ソース全く上げずに他言語攻撃するよりはまったりしていてよし。
0026Mr. JNGNG
>>15

WSHでなくてもclassは再利用できるんです。
ファイルの出入力を強調したいわけじゃなくてclassの再利用について強調したいんです。
>>10

を見てもらえばわかるようにクラスを作成してWeb上に置いておけば誰でも
いつでも再利用できるんです。
0027デフォルトの名無しさんNGNG
>>25
「全コード」って言ってるやん。
要は他の言語スレと同じ。要点まとめろと。
0028デフォルトの名無しさんNGNG
それなら
ActiveXコントロールのがまだいいや
(´∀` )
002919NGNG
>>22 ありがとう。そうか、仕様追加されたんだ。
うーん、でも >>10 のコードを見る限り ECMA262 のプロトタイプ
の範疇だと思うんだけど、JScriptで追加されたクラス定義の
やりかたを誰か教えてくれないでしょうか。
0030Mr. JNGNG
>>19
申し訳ないです。プロトタイプ方式というのを知りません。
0031デフォルトの名無しさんNGNG
>>29
http://www.microsoft.com/japan/msdn/columns/scripting/scripting07142000.asp

近いかな?ちゃんと読んでないけど。
0032デフォルトの名無しさんNGNG
// 関数を class ステートメント内にラップします。
class Car
{
// クラス メンバを宣言します。この例では型を使用しましたが、
// 使用しなくてもかまいません。クラスを 'expando' としてマークすれば、
// これらのメンバを宣言する必要はありません。
var make : String;
var color : String;
var year : int;

// 古いコンストラクタ関数はそのまま。
function Car(make, color, year)
{
this.make = make;
this.color = color;
this.year = year;
}

// 関数をクラス内に移動します。
function GetDescription()
{
return this.year + " " + this.color + " " + this.make;
}
}

// 新しい Car オブジェクトを作成して使用します。
var myCar = new Car("Accord", "Maroon", 1984);
print(myCar.GetDescription());


http://www.microsoft.com/japan/msdn/columns/scripting/scripting07142000.aspより

0033デフォルトの名無しさんNGNG
良かったな>>1。どうやら袋叩きには遭ってないようで。
0034デフォルトの名無しさんNGNG
>>33
割と望まれてる子だし。JS.NET。
0035デフォルトの名無しさんNGNG
VBScriptには未来はないということでよろしいか?
0036Mr. JNGNG
>>33
はじめはどうなるかとドキドキして必死でがんばりました。
0037デフォルトの名無しさんNGNG
>>35
これまでもあったのか?
0038デフォルトの名無しさんNGNG
>>35
VBScriptはMS製品の共通言語でしょ?
WordでもExcelでもASPでも使うし。
0039デフォルトの名無しさんNGNG
完全に絶たれた、ということで
0040デフォルトの名無しさんNGNG
VBAの方が深刻だと思われ。
中途半端に普及して・・・。
0041デフォルトの名無しさんNGNG
まだ気は抜くな。土日が待ってる。
0042デフォルトの名無しさんNGNG
なぜM$はこの期に及んでVB.NETなど出したのだろう・・・
0043デフォルトの名無しさんNGNG
>>42
旧VBプログラム(Notプログラマ)コンバータ。
0044デフォルトの名無しさんNGNG
スレ違いですよ>VBScript,VBA,VB.NET
0045デフォルトの名無しさんNGNG
なぜかVB系のSetステートメント好きだな
Set Object=object
ああこれぞオブジェクト
0046デフォルトの名無しさんNGNG
このスレでは何を話し合うつもりだ?>1
JavaScriptとJScript、JScript.NETの共通部分なんて微々たる物だし、
JavaScriptならWeb、JScriptならWSH、JScript.NETなら.NETそれぞれのスレに話が行くし
0047デフォルトの名無しさんNGNG
>>46
>JScript.NETなら.NET
逝かないから困ってるんですが?
0048デフォルトの名無しさんNGNG
>>46
せっかく良スレになってきてるのに沸いてくるなよ。
004919NGNG
>>32
ありがとう、そうか、classって識別子を導入したんだね。
>>30
クラス方式ってのはclass定義をあらかじめ行ってから
オブジェクトを生成するやり方。プロトタイプ方式は
オブジェクトを生成してから、あと付けでプロパティや
メソッドをがんがん追加していくやり方。
prototypeプロパティを使い始めるとクラスを使っていた
わけじゃないのが理解できると思う。
005019NGNG
http://blade.nagaokaut.ac.jp/~poffice/news2/fj.comp.lang.java/1489
を読むとわかるかも。それか、この人が書いた
http://www.ascii.co.jp/books/detail/4-7561/4-7561-3871-3.html
か。
0051デフォルトの名無しさんNGNG
ま、需要があれば自ずからスレ伸びるよ。しばらく様子見たれ。
0052Mr. JNGNG
>>49
丁寧な解説ありがとうございます。実は、JavaScriptの勉強
をするのにJavaの本を買ったりして勉強したんです。という
かJavaScriptの解説本を読んでJavaScriptを理解できる人は
天才だと思います。なにしろ、いきなり関数の再起呼び出し
をやってるコードを示してVBより簡単とかいってますから。
普通new演算子が出てきた時点でJava本に走ると思います。
0053デフォルトの名無しさんNGNG
javaを一から勉強したいんだけど何かお勧めの本ない?
0054デフォルトの名無しさんNGNG
>>53
だからな、スレ違いなんだよ。
0055デフォルトの名無しさんNGNG
今現在
糞スレばかり上がってるな(´∀` )
0056Mr. JNGNG
>>46
オブジェクト指向の考え方は書いたコードをいかに効率的に再利
用するかという要請によって誕生したと理解しているので、
Web, WSH, FLASHなどで再利用できるとしたら結構素敵かと思って。
知ったらみんなちょっとうれしいかな。なんて考えただけです。
0057デフォルトの名無しさんNGNG
>>53
スレ違い。

>>52
JavaScriptの本ってほとんどWeb系の本ばっかりだから、
純粋に言語として扱っている本がないのは致命的。
誰か久野先生以外の本、知ってたら教えて下され。
0058デフォルトの名無しさんNGNG
> Web, WSH, FLASHなどで再利用できるとしたら結構素敵かと思って。
> 知ったらみんなちょっとうれしいかな。なんて考えただけです。

やっぱうれしがるのはWEB板の人かなぁなんて思うのよね…
0059Mr. JNGNG
>>53
Java言語プログラミングレッスン(上)(下)
参考としては
明解C言語入門
0060デフォルトの名無しさんNGNG
JavaScript,JScript等は、
ブラウザをフォームに見立てれば、立派なプログラミング言語だと思うが。
0061Mr. JNGNG
ごめん訂正。

Java言語プログラミングレッスン(上)(下)
結城 浩 (著)

参考としては
明解C言語 入門編
柴田 望洋 (著)
0062Mr. JNGNG
>>55
どこいきゃいいんだ?
0063デフォルトの名無しさんNGNG
>>62
フサギコと心中も一興
0064デフォルトの名無しさんNGNG
なんつーか、 1 が痛々しい。61なんて59,61なんて
周りの空気読めてないし。スレ違いだってみんなが指摘
しているのになぜ続けるか。再利用の話もうわっつら
な理解だけで言葉を並べているだけ。とりあえず、落ち着け。

Javascriptのスレがあること自体には反対しません。はい。
0065デフォルトの名無しさんNGNG
だからとりあえず落ち着いて様子見するべ。
需要があれば自ずから(略
0066デフォルトの名無しさんNGNG
Javaと混同するやつが後を絶たんのでオンリーJScriptスレにしてほしい。
0067デフォルトの名無しさんNGNG
1の母で…以下は省略されました
0068Mr. JNGNG
>>64


気が短くて申し訳ありません。

別に知識をひけらかしたくて参考文献を示したわけではないです。
ちょっとした皮肉のつもりでした。

JScriptは正規表現をサポートしておりWindows環境のあるところな
らどこでもつかえる便利な言語であると認識しています。Perlでい
いという人もいるでしょうけど普通Perlはサーバーよりの環境にし
か突っ込まれていません。それに、普通UNIXのあるところにしかな
いですしね。JScriptのほうが設置ベースが大きいのです。それに
会社のパソコンの管理なんかやるにしても開発環境が無料というの
は結構お得だと考えます。
0069デフォルトの名無しさんNGNG
でもPerlの方が使いやすいし、ただには変わりない。
つーかご高説は聞きたくない。実になる話をしてオクレ。
0070デフォルトの名無しさんNGNG
ミガデター━━━━━(゜∀゜)━━━━━━!!!! 
0071デフォルトの名無しさんNGNG
ローカルリソースへのアクセスが標準化されてないのはいたい。
WSHにしてもmozilla(rhino)にしてもそれぞれ独自のやり方でしか
ファイルアクセスできない。手軽に正規表現でテキスト処理できる
って感じじゃないんだよなぁ。だから常用のスクリプトにはしてないや。
使うのは、特定のファイルのコピーのやり方をメールで指示するときに
.jsファイルをメールに添付して「ダブルクリックしろ!」とかいうときくらいだ。
0072Mr. JNGNG
>>71
ですから、そういうことについて語ってほしかったわけです。
別に俺が教えてやるといっているわけじゃないんですから。
0073デフォルトの名無しさんNGNG
JavaScriptつーとこういうのもあるな。
http://sash.alphaworks.ibm.com/
http://www-124.ibm.com/developerworks/oss/sashxb/
007471NGNG
すまんが、72がなぜおれに絡んでくるのか、だれかわかりやすく
解説してくれんか? 理解できん。

>>73
IBMも処理系ネタ好きだよね。alphaworksみていると、それ業務で
やってんのかってのがいろいろあって楽しい。
0075デフォルトの名無しさんNGNG
>>74
皆にそういった話題をして欲しかったってことじゃないの?
絡んでるわけじゃないと思われ。

スレ終了に持って逝きたがる輩が多いからね。
0076Mr. JNGNG
>>74
申し訳ないです。あなたは別に煽ってもいませんし私の落ち度です。
ちょっと気が立ってました。反省してます。
0077デフォルトの名無しさんNGNG
JavaScriptのちょっとだけ濃い話
ttp://www.geocities.co.jp/SiliconValley-PaloAlto/5042/

JavaScriptで圧縮とか暗号化とかしてみる
ttp://www.goice.co.jp/member/mo/amuse/javascript/expert/
0078デフォルトの名無しさんNGNG
JavaScript使用のサイト・リローダー

>リローダーっす。(悪用厳禁)
>http://www.hoops.livedoor.com/~himajin_ch/reloader.htm
0079デフォルトの名無しさんNGNG
参考に。

ECMAScript Language Specification, 3rd edition
http://www.ecma.ch/ecma1/STAND/ECMA-262.HTM

書籍で個人的によかったのは
「JavaScript第3版」David Flanagan(オライリー)
0080デフォルトの名無しさんNGNG
JavaScript、JScriptとJScript.NETって一緒くたにして語るべきもんなの?
0081デフォルトの名無しさんNGNG
>>80
Javascript + JScriptはともかくとして、
JS.NETは混同してはいけないだろう。

VBとVB.NETを同じスレで扱うようなもの。
0082デフォルトの名無しさんNGNG
>>81
何が問題かわからん
途中から説明してくれ
0083デフォルトの名無しさんNGNG
JScriptは気に入っている言語の一つではあるが、
本気でオブジェクト指向しようとすると記述がものすごく面倒なのがつらい。
tokumaru.netの継承サンプルとかすごいよ。

実用的なコードを出すとプラットフォーム依存になってしまうがそれでも良いか。
Flashは知らないし。

あとJScript.Net使うくらいならC#を使いたいところ。
VSAではC#使えないらしいので、JScript.Netも出番ありか。
0084デフォルトの名無しさんNGNG
それっぽいnewsgroup
ニュースサーバ msnews.microsoft.com
グループ名
 microsoft.public.dotnet.languages.jscript
 microsoft.public.dotnet.vsa
 microsoft.public.inetsdk.programming.scripting.jscript
 microsoft.public.scripting.jscript

compならcomp.lang.javascript
fjならfj.comp.lang.javascriptだが、ほぼ死んでいる。
0085デフォルトの名無しさんNGNG
こういう話がしたいのですかね?>>1
コピペして.jsで保存>cscript hoge.js

function hoge1(){
this.showName = showName;
function showName(){return "hoge1";}
function showName2(){return "hoge1_";}
}

function hoge2(){}
function hoge2_showName(){return "hoge2";}
hoge2.prototype.showName = hoge2_showName;

function hoge3(){}
function hoge3_showName(){return "hoge3";}
hoge3.showName = hoge3_showName;

WScript.Echo(new hoge1().showName());
WScript.Echo(new hoge2().showName());
WScript.Echo(hoge3.showName())

//以下はエラーになる
WScript.Echo(new hoge1().showName2());
WScript.Echo(new hoge3().showName());

0086Mr. JNGNG
>>10のコードをJavaでかくとこうなります。

class Horse{
    String name;
    int age;
    boolean isMale;
    
    Horse(String name, int age, boolean isMale){
        this.name = name;
        this.age = age;
        this.isMale = isMale;
    }
    
    public String toString(){
        return this.name + "は" + this.age + "歳";
    }
}

class Zebra extends Horse{
    int stripeCount;
    Zebra(String name, int age, boolean isMale, int stripeCount){
        super(name, age, isMale);
        this.stripeCount = stripeCount;
    }
    
    public static void main(String[] args){
        Horse h = new Horse("Bill", 4, true);
        Zebra z = new Zebra("Jane", 3, false, 382);
        System.out.println(h);
        System.out.println(z);
    }
}
0087Mr. JNGNG
ここからWindows Script Hostのヘルプを落とせます。
このヘルプはJScriptとVBScriptのランゲージリファレンスを含みます。
http://www.microsoft.com/japan/msdn/scripting/default.asp

昨日ここらを紹介しなかったのはまずかったと反省しています。
紹介すればもっと有意義な議論になったかもしれないのに。
0088デフォルトの名無しさんNGNG
だからスレの方向性をはっきりすれ。
Javaとか関係ないやん。
0089Mr. JNGNG
>>83
>>10のコードでHorseのメンバ関数であるtoString()は自動的に継承されていると思うんですけど。
FLASHは私も知りません。
0090デフォルトの名無しさんNGNG
(´ー`)。o○(1が率先してスレ違いの話をしてるのは何でだろう・・・)
0091Mr. JNGNG
>>88
JScriptはコンストラクタと関数の区別がはっきりしないんです。
>>10のコードでメンバ関数はfunction HorseToString()だけで
function Horseおよびfunction ZebraはJavaで言うところのコ
ンストラクタに相当するといいたいわけです。
0092デフォルトの名無しさんNGNG
>>91
それって誰か質問したんか?
「JScriptにコンストラクタはあるんですか?」とか。
なんだか>>1が講釈たれたくてageてるだけのスレに見えるんだよなぁ。
0093デフォルトの名無しさんNGNG
>>92
いや、その通りでしょ。
0094デフォルトの名無しさんNGNG
俺は正直、今までの内容ならWEB板、WSHスレのそれぞれで
やった方がいいと思うよ。
この板で新しく立てるなら「JScript.NET」に絞ったほうがいいと思う。
0095デフォルトの名無しさんNGNG
あとは「VC++(MFC限定)相談室」みたく「WSH(JScript限定)相談室」とかね。
WEBやFLASHで使えるって利点をアピールするのは正論だとは思うのだけど
やっぱWEB板の方がユーザも多いと思うし盛り上がると思うんだよね。
需要が無いのにage続けてるとうざがられるだけだし、
少しでも需要がある場所に行った方がよいと思う。
JavaScript、JScript、同.NETを一緒にして純粋に言語だけを語るのは
難しいんじゃないかなぁ。
しかも2chて質問するときに自分の環境を書くことなんてまず無いから
「それってJavaScriptの話?JScript?.NET?WSH使う?WEB?」
みたいな質問返しの応酬の予感。
0096デフォルトの名無しさんNGNG
個人的には w3m に JavaScript を激しく組み込むスレにしてほすぃ。
0097Mr. JNGNG
申し訳ない。
なんか利点を強調したくて焦点が絞れなかったみたい。
別に講釈をたれたかったわけじゃなくて、
JScriptで面白いことをやれたらいいなと思っただけ。
Javaを持ち出したのは、JavaScriptのオブジェクト指向的な部分は
Javaからのパクリだからというのと自分の説明の仕方が悪くてまと
もな議論になっていないように見えたので、ここの人にはJavaを持
ち出して説明したほうがよかったと反省したから。
自分がたまにJavaのライブラリから考え方をパクッて使ったりするので、
CLRからも考えをパクると面白いかと思って。
とりあえず、私の不徳のいたすところで皆さんに迷惑をかけました。
私的にはには終了ということにしたいです。
なにか苦情とかがあればお答えしますけど。
0098デフォルトの名無しさんNGNG
>>97
>JavaScriptのオブジェクト指向的な部分はJavaからのパクリだからというのと
ぜんぜん違うよ。上のほうでクラス方式とプロトタイプ方式
っていう分類を持ち出していた人いたように、Javascriptは
Javaに比べてもっと即興的なもの。Javaみたいなクラス方式?
は、オブジェクトの集団を分類するでしょ。つまりなにかの
オブジェクトは特定のクラスに属する。で、言語としても
それをサポートする構文規則が存在する。でもJavascriptには
それはないの。
たとえば、>>10 の
var h = new Horse("Bill", 4, true);
ってあるけど、結局これは、hというオブジェクトに対して
プロパティとメソッドを付け加えるためのfunctionにあとで
再利用できるためにHorseという名前が付いているだけ。
これをJavascriptでは、コンストラクタとよんでいるけど
Javaのそれとは意味が違う。だから、生成したあとの
h が、Horseクラスに属するとかそういう概念はないわけ。
共通のメソッドとプロパティを持っているオブジェクトの
集団は生成できるし、それをひっくるめることでJavascriptにおける
クラスの概念としても別にかまわんけど、構文規則として
それをサポートしているものはないの。だから、Horse functionと同じ
内容で違う名前のHorse1 functionってのが
あったとして、
new Horse("Bill", 4, true);
new Horse1("Bill", 4, true);
は見分けられない。Horse.call(this, name, age, isMale);
も単にHorseを使って新たなプロパティの追加を行っているだけ。
prototypeを使い始めるとわかるとおもうけど、あれも
クラスの継承とは違うんだよ。荒い言い方すると、
あるオブジェクトから、あるプロパティを取り出すときに
名前探索する範囲を他のオブジェクトが持っているプロパティ
まで広げられるってだけ。だからinstanceofみたいな
キーワードもあるけど、使い方はクラス方式とはぜんぜん違う。
#以上は、ECMA262 3ed.までの話だから、4ed.ではclassが...
#とかいう突っ込みはなしね。
みたいなことを理解しないと、Javascriptのオブジェクト指向
の話はできないよ。ってことでちょっと空回りしていた感も
あるんで、1はしばらく頭冷やすのがよいとおもわれ。1が自分で
いうように終了しろとまではいわんけどね。戻ってくるもよし、
そのまま立ち去るもよし。
0099デフォルトの名無しさんNGNG
Web関連はWeb板で、
WSHはhttp://pc.2ch.net/test/read.cgi/tech/1010400289/
があるから、ココはJScript.NETスレにして再利用すれば?
0100100NGNG
ひやく
0101デフォルトの名無しさんNGNG
>>99
.NETだと4ed.ベースになるみたいだし、スレタイからJavascriptは外したいとこ
だなぁ。.NET以外に実装し始めた処理系ってないよね?
とりあえず、このまま方向性決めずに放っておいて、.NETの話が多いなら
スレ立て直す、沈んでいくならそれもよし、Webネタ、WSHネタ
ばっかりだったら板違いってことでこのスレは沈めるってのは?
■ このスレッドは過去ログ倉庫に格納されています