为何调入外部js文件不成功?浏览器无反应....

为何调入外部js文件不成功?浏览器无反应....


html文件部分:http://img1.sycdn.imooc.com//climg/5cc1834100011bb310090298.jpg


<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>计算出生日期是当年的第几天</title>

<script scr="C:\Users\Administrator\Desktop\js1-20作业.js" type="text/javascript"></script>

</head>

<body>


</body>

</html>



js文件部分:

var year=parseInt(prompt("请输入出生年份")),

month=parseInt(prompt("请输入出生月份")),

day=parseInt(prompt("请输入出生日份"));

function days(){

if(year%4==0&&year%100!=0 ||  year%400==0){

daysArray[1]=29; //此处写成arguments[1]=29可以吗?哪种更好?

}

for(i=0;i<month-1;i++){

sum+=daysArray[i];

return sum+day;

}

}

daysArray(31,28,31,30,31,30,31,31,30,31,30);

alert("此出生日期在"+year+"年是第"+days+"天");


正在回答

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

2回答

你好同学,解答如下:

1.因为从你提供的代码中,如下是不对的,这是调用函数的语法,而daysArray在代码中并不是一个函数:

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

并且你在函数中使用daysArray[1]是数组获取元素的固定语法,根据这个用法,是想要把日期都保存在一个数组中,然后循环数组对元素进行累加

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

所以要把daysArray定义成一个数组:

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

不知道同学说的视频具体是哪一块,这个要具体情况具体分析。像本课程中,讲解的是函数,函数使用function定义,调用就是函数名+(),自然不用去把它定义成变量。如果还有疑问,可以具体描述一下哪一个视频的案例。

2.图三最后就是把函数调用的返回值赋值给了total ,然后输出total自然就是最后的结果。和如下直接输出函数调用是一样的,代码是很灵活的:

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

3.for循环里面的代码每一次循环都会执行,如果把var sum=0放在循环里面,sum就一直重新定义并赋值为0 ,例如上一次循环sum等于31 ,进入下一次循环,sum又等于0,所以不能放里面。

祝学习愉快 ,望采纳。

好帮手慕星星 2019-04-25 18:35:05

同学你好,代码中的问题:

1、script标签中的src属性写错了:

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

c和r字母位置反了。

2、js代码中:

(1)定义数组方式错了,应该使用[]定义数组,后面js内置对象中会学习到,这可以先了解一下;

(2)sum值没有声明就使用了,会报错的;

(3)最后返回的结果需要在for循环外面返回,否则计算一次之后就返回结果了;

(4)方法是需要调用才会返回结果的。

如下:

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

3、如果想换成arguments[1]这样写就不对了,需要在方法中传入,for循环中也需要循环arguments了,如下:

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

可以修改测试下,祝学习愉快!

  • 提问者 情人节礼物 #1
    追问:1. 图二,为何最后的方法调用, daysArray前面要加var声明一下?视频里有些情况就不用呢。 2.图三,为何最后的方法调用,又改成了var total=days? 是什么规律呢?
    2019-04-26 15:22:32
  • 提问者 情人节礼物 #2
    另:var sum=0可以写在for循环的花括号里吗?跟写在循坏外有何区别
    2019-04-26 15:31:14
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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