为了账号安全,请及时绑定邮箱和手机立即绑定

你能在一个数组中操作一个JS函数吗?

你能在一个数组中操作一个JS函数吗?

繁花如伊 2023-03-03 13:18:34
我有 JS 测验,问题是从数组中随机选择的。我试图用图像(俱乐部徽章)替换每个问题,但保持答案格式不变。这可能吗?如何实现?当前代码如下:JavaScriptconst questions = [    {        question:  `What league do Manchester United play in?`,        answers: [            {text: 'Premier League', correct: true},            {text: 'Championship', correct: false},            {text: 'League One', correct: false},            {text: 'Scottish Premiership', correct: false}        ]    },    {        question: 'What league do Millwall play in?',        answers: [            {text: 'Premier League', correct: false},            {text: 'Championship', correct: true},            {text: 'League One', correct: false},            {text: 'Scottish Premiership', correct: false}        ]    },HTML:<div id="question"><img id="crest" src="assets/images/image1.png"></div>我已经在 JS 中创建了这些函数,但不知道如何让它们在问题中运行function displayManutdCrest() {    document.getElementById('crest').src='assets/images/image2.png'}function displayMillwallCrest() {    document.getElementById('crest').src='assets/images/image3.png'}我只是在学习 JS,如果这没有意义,我深表歉意
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

我认为这个问题是有道理的,可以说明一些有用的东西。您想要创建一种易于放大的方法。如评论中所述,您不想为每个问题编写一个函数,这会使构建问题库变得非常困难。您需要一个单一的功能来回答任何问题以及您需要的所有信息。那么函数只需要从题库中读取相应的信息即可。您可以添加另一个标签,例如pict. 类似(非功能代码):


const questions = [

{

    question:  `What league do Manchester United play in?`,

    pict: "assets/images/image2.png",

    answers: [

        {text: 'Premier League', correct: true},

        {text: 'Championship', correct: false},

        {text: 'League One', correct: false},

        {text: 'Scottish Premiership', correct: false}

    ]

},

{

    question: 'What league do Millwall play in?',

    pict: "assets/images/image3.png",

    answers: [

        {text: 'Premier League', correct: false},

        {text: 'Championship', correct: true},

        {text: 'League One', correct: false},

        {text: 'Scottish Premiership', correct: false}

    ]

},

...

];


function displayQuestion(q){

  // Choose question

  let i = ... ; //someRandomValue;

  let question = q[i];

  //

  document.getElementById('crest').src = question.pict;

}


displayQuestion(questions);


查看完整回答
反对 回复 2023-03-03
  • 1 回答
  • 0 关注
  • 116 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号