请问我取不到这个返回值是为什么,感谢

请问我取不到这个返回值是为什么,感谢

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title> 封装indexOf方法</title>

</head>

<body>

<script>

   //补充代码

   var  x,

        str,

        arr=[1,2,5,8,20,"稳定"];

   function newIndexOf(arr,value){

       for(x=0;x<arr.length;x++){

           if(arr[x]===value){

               return x;

           }

           return -1;

       }

   }

   str=newIndexOf(5);

   document.write(str);

</script>

</body>

</html>


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

两个错误:

①你封装的函数需要传递两个参数,而你调用的时候只传了一个参数,所以会是undefined

②return -1;需要放在for循环外面,否则当循环到一个数组项就会在页面返回-1并跳出函数体

好帮手慕夭夭 2019-08-23 17:56:48

你好同学,问题与修改如下:

http://img1.sycdn.imooc.com//climg/5d5fb85c0001789d10580477.jpg

祝学习愉快,望采纳。

提问者 凛冬将至0_0 2019-08-23 17:48:00

函数第一个值为数组名

  • 两个错误: ①你封装的函数需要传递两个参数,而你调用的时候只传了一个参数,所以会是undefined ②return -1;需要放在for循环外面,否则当循环到一个数组项就会在页面返回-1并跳出函数体
    2019-08-23 17:53:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师