【週刊ドットインストール】 考える力を養うための新クラス『データで学ぶアルゴリズム』を256timesでリリース!
今までに学習した配列操作と、今回学習した配列とオブジェクトの組みわせを使って以下のようなコードを書いたのですが、期待した実行結果が得られませんでした。
const point = { x: 100, y: 200, } const points = [ {x: 30, y: 40}, {x: 20, y: 10}, {x: 50, y: 30}, ] points.push(point); console.log(points); points.splice(1, 2, {x: 200, y: 300}, {x: 150, y: 250}); console.log(points);
上記のコードが記述通りの実行順序であるならば、以下のような実行結果になることを期待していました。
[ 0: {x: 30, y: 40} 1: {x: 20, y: 10} 2: {x: 50, y: 30} 3: {x: 100, y: 200} ] [ 0: {x: 30, y: 40} 1: {x: 200, y: 300} 2: {x: 150, y: 250} 3: {x: 100, y: 200} ]
しかし、実際の実行結果が以下のようになりました。
[ 0: {x: 30, y: 40} 1: {x: 200, y: 300} 2: {x: 150, y: 250} 3: {x: 100, y: 200} ] [ 0: {x: 30, y: 40} 1: {x: 200, y: 300} 2: {x: 150, y: 250} 3: {x: 100, y: 200} ]
この結果から予想されることとして、splice() や push() などが全て console.log より先に実行されるのではないかと考えました。だとすれば元々期待していた実行結果を得るためにはどうしたら良いのでしょうか?
splice()
push()
console.log
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
今までに学習した配列操作と、今回学習した配列とオブジェクトの組みわせを使って以下のようなコードを書いたのですが、期待した実行結果が得られませんでした。
上記のコードが記述通りの実行順序であるならば、以下のような実行結果になることを期待していました。
しかし、実際の実行結果が以下のようになりました。
この結果から予想されることとして、
splice()やpush()などが全てconsole.logより先に実行されるのではないかと考えました。だとすれば元々期待していた実行結果を得るためにはどうしたら良いのでしょうか?