iT邦幫忙

1

一個關於JavaScript二維陣列表示網頁座標 高手表示很簡單的問題

  • 分享至 

  • xImage

先澄清 我是查了至少三四個網站才來發問 請各位前輩鞭小力一點

各位前輩好 小弟被裁員後 一直努力想要靠自學成為一個所謂的工程師
但沒人帶真的很辛苦 努力了兩個月 網頁的程式碼只看得懂六成
因為我知要拿到offer 架站經驗是基本 所以打算做一個戰棋遊戲的小網站 自己註冊自己玩
我看過chris Courses, Code with Ania Kubów, Code Monkey的YT頻道
Psuedocode 寫了十分之一
但實際自己做 第一段程式碼就有幾十個Bug
我想做一個10*5的二維陣列 每一個陣列元素紀錄網頁的(x,y)座標
https://ithelp.ithome.com.tw/upload/images/20230205/20157210KDP3bICs4p.png
想請教前輩我的程式碼哪裡出錯
還有要如何標定javascript的二維陣列座標
以下是我的錯誤程式碼 陣列xy座標元素並沒有隨 i j 遞增
https://ithelp.ithome.com.tw/upload/images/20230205/20157210olECpLG8xt.png
https://ithelp.ithome.com.tw/upload/images/20230205/201572107tsAH2Mf5w.png
以下是我爬過的java文
https://ithelp.ithome.com.tw/upload/images/20230205/20157210FqISZEKEqJ.png

我的x y座標程式碼就是模仿下面這段程式碼

https://ithelp.ithome.com.tw/upload/images/20230205/20157210wKROst6zrN.png

最後我想問一下 用chatGPT可以產生這段程式碼嗎? 我看網上很多神人沒寫過網頁可以用chatGPT做電商網站 我問chatGPT從來都是顯示error

小哈片刻 iT邦研究生 4 級 ‧ 2023-02-05 20:18:09 檢舉
你沒有印出Array裏實際儲存的值
Array(2)的意思是一個陣列裏面有兩筆資料
你如果要完整列出陣列裏的值,可以改用這一行
console.log(JSON.stringify(a))
froce iT邦大師 1 級 ‧ 2023-02-05 22:42:04 檢舉
> 最後我想問一下 用chatGPT可以產生這段程式碼嗎? 我看網上很多神人沒寫過網頁可以用chatGPT做電商網站 我問chatGPT從來都是顯示error

chatGPT的確能彙整出一些code,但很多產生出來是不能馬上用的,你說有神人可以用chatGPT電商網站...敢用的的確是神人啦。科科

> 各位前輩好 小弟被裁員後 一直努力想要靠自學成為一個所謂的工程師

另外結合這句...
你會想用chatGPT讓你自己被再次裁員嗎?不然程式碼只看懂六成怎麼會有打算用chatGPT產生一個專案的念頭...
那我是老闆我可不可以讓個程式碼只看的懂三成但比你會問chatGPT的人取代你的工作?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
一級屠豬士
iT邦大師 1 級 ‧ 2023-02-05 18:49:13

https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Guide/Loops_and_iteration

for (var i = 0; i < a.length; i++)

你的程式,跟你找的例子, 都是
i ++, j ++
這樣, 多了個空白,你要不要改一下試試看.

2
海綿寶寶
iT邦大神 1 級 ‧ 2023-02-05 23:49:28
let arr = [];
let rows = 5;
let columns = 3;
let p1={"x":3,"y":8};
// creating two-dimensional array
for (let i = 0; i < rows; i++) {
  arr[i] = [];
  for (let j = 0; j < columns; j++) {
    arr[i][j] = getpoint(i,j);
  }
}

function getpoint(x,y) {
  let ret = {"x":x,"y":y};
  return ret;
}
console.log(arr);

如果這是你要的結果
說明如下:
你要做的事有兩個部份
1.二維陣列,可參考這篇 2023年1月 的文章
2.一個陣列位置存放「多個資料」(x,y),可參考這篇

結論
祝你好運

0
fillano
iT邦超人 1 級 ‧ 2023-02-06 08:39:53

你先觀察你的資料,如果你要產生的二維陣列,是跟你的圖一致的話(i對應x座標,j對應y座標),那外側迴圈應該是j,內側才是i。

因為你要的陣列排列的順序是對應到螢幕由左而右,由上而下,所以第一列是固定y,然後變化x,第二列是固定y+1,然後變化x,依此類推。

我要發表回答

立即登入回答