亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

p5.j??s 無法讀取數組的隨機值

p5.j??s 無法讀取數組的隨機值

瀟瀟雨雨 2022-01-07 11:05:25
你好!我正在嘗試在 p5.js 中做一些事情,當程序嘗試獲取數組的隨機值時會卡住。這是我為演示而制作的一個簡單程序:var arr = [100, 200];var a;function setup() {  createCanvas(400, 400);  a = random(0, 1);}function draw() {  background(220);  ellipse(arr[a], 20, 20, 20);}程序返回一條消息,說橢圓函數想要一個數字,但得到了一個變量。如果說arr[0]or arr[1],它會起作用,但不是arr[a]。我正在使用 p5.js 網絡編輯器。我不知道為什么會這樣。如果您有解決方案,請回復。謝謝!
查看完整描述

3 回答

?
叮當貓咪

TA貢獻1776條經驗 獲得超12個贊

有一種更簡單的方法可以使用 P5.js 獲取數組的隨機元素。 a = random(arr);將從數組中返回一個隨機元素。


查看完整回答
反對 回復 2022-01-07
?
Helenr

TA貢獻1780條經驗 獲得超4個贊

根據文檔,該random()功能將:

返回一個隨機浮點數。

這意味著它可能類似于0.123,這顯然不是數組索引。

如果您想從數組中獲取隨機索引,您應該執行以下操作:

var arr = [100, 200];
var a = Math.round(random(0, arr.length));

這使您能夠向源數組添加更多項目,而無需調整任何其他代碼。然后根據浮點值將其四舍五入為最接近的整數(向上或向下)。


查看完整回答
反對 回復 2022-01-07
?
有只小跳蛙

TA貢獻1824條經驗 獲得超8個贊

P5.js Random 返回一個隨機浮點數。


工作演示:


var arr = [100, 200];

var a;


function setup() {

  createCanvas(400, 400);

  a = Math.floor(Math.random()*arr.length)

}


function draw() {

  background(220);

  ellipse(arr[a], 20, 20, 20);

}

<script src="https://cdn.jsdelivr.net/npm/[email protected]/lib/p5.js"></script>


查看完整回答
反對 回復 2022-01-07
  • 3 回答
  • 0 關注
  • 231 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號