试了一下函数无法调用

试了一下函数无法调用

	<script>
		var name = "xm";
		function fn(){
   			var name = "xh";
    		var sex = "male";
   			function fn2(){
        		var name = "xhei";
        		var age = 18;
    }
}

console.log(fn.name);
	</script>

控制台报错,是函数的写法有问题吗

正在回答

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

2回答

你好, =是赋值。.是对象中,添加成员属性和方法用的;关于对象与函数可参考一下这个问题http://class.imooc.com/course/qadetail/18026  以上面为例输出函数中的name,方法有很多种呀,因为本身是个变量,1、可以直接在函数中输出,这样调用函数的时候,就可以把它的值输出了。2、另一种,可参考下图:在函数中的name声明为全局变量,然后在函数外调用,输出。可测试看下效果哦。

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

祝学习愉快~

好帮手慕糖 2017-12-14 11:12:42

你好,调用函数直接写fn()就可以了呀,不过该函数中没有输出语句,也没有返回值,没有返回值的话,会返回undefined的,所以就算是调用函数console.log(fn());也会输出undefined;你可以测试下,看是否是你想要的效果,若不是的话,建议:详细的描述下需求,便于大家测试与解决问题。

祝学习愉快~

  • 看了后面的视频发现是自己没有表述清楚问题,在函数或者对象中用 ":"和用"="赋值有什么区别呢? 在调用方面又有什么区别?没太搞懂函数和对象的区别,比如上面这个问题,我是想输出fn()中的name的值,但是这个写法好像有问题.
    2017-12-15 10:32:43
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

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

在线咨询

领取优惠

免费试听

领取大纲

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