jsのfor inサイクルとjavaの中のforeachサイクルの区別分析
1217 ワード
本論文の例ではjsのfor inループとjavaにおけるforeachループの違いを解析した.皆さんの参考にしてください.具体的な分析は以下の通りである.
jsのfor inループは以下のように定義されています.
objは、通常のjsオブジェクトまたは配列であってもよい.objがjsオブジェクトである場合、variableは、属性に対応する値ではなく、遍歴で得られるオブジェクトの属性の名前です.objが配列である場合、variableは遍歴で配列の下付き記号を得る.
対象実験の遍歴:
コンソールからの出力:
field1 field2
遍歴配列実験:
コンソール出力:
0 1 2
Javaのforeachサイクルを比較すると、2つの大きな違いがあります.まずjavaのforeachループはjavaオブジェクトのプロパティを列挙しません.次にjavaのforeachループが1つの配列またはIterableインタフェースを実装したオブジェクトを列挙する場合、for(Object o:list)はリストの下ではなくリストの要素を得る.
JAvaの遍歴コードは貼られません.バックグラウンドコードをよく書きますが、foreachループはよく知っています.フロントjsコードを書くときはjavaの文法を使うのは避けられないので、初めてjsのfor inループを使うときに間違いを犯しました.今度はっきりまとめておけば,後で間違いを犯すことはない.
本稿で述べたjavascriptプログラムの設計に役立つことを願っています.
jsのfor inループは以下のように定義されています.
for(var variable in obj) { ... }
objは、通常のjsオブジェクトまたは配列であってもよい.objがjsオブジェクトである場合、variableは、属性に対応する値ではなく、遍歴で得られるオブジェクトの属性の名前です.objが配列である場合、variableは遍歴で配列の下付き記号を得る.
対象実験の遍歴:
var v = {};
v.field1 = "a";
v.field2 = "b";
for(var v in v) {
console.log(v);
}
コンソールからの出力:
field1 field2
遍歴配列実験:
var mycars = new Array()
mycars[0] = "Saab"
mycars[1] = "Volvo"
mycars[2] = "BMW"
for (var x in mycars){
console.log(x);
}
コンソール出力:
0 1 2
Javaのforeachサイクルを比較すると、2つの大きな違いがあります.まずjavaのforeachループはjavaオブジェクトのプロパティを列挙しません.次にjavaのforeachループが1つの配列またはIterableインタフェースを実装したオブジェクトを列挙する場合、for(Object o:list)はリストの下ではなくリストの要素を得る.
JAvaの遍歴コードは貼られません.バックグラウンドコードをよく書きますが、foreachループはよく知っています.フロントjsコードを書くときはjavaの文法を使うのは避けられないので、初めてjsのfor inループを使うときに間違いを犯しました.今度はっきりまとめておけば,後で間違いを犯すことはない.
本稿で述べたjavascriptプログラムの設計に役立つことを願っています.