吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1280|回复: 8
收起左侧

[已解决] JS基础: 函数的调用

[复制链接]
clearwater 发表于 2020-2-17 15:53
本帖最后由 clearwater 于 2020-2-17 16:10 编辑

请不要来回复一些对楼主没有帮助的水帖。--例:路过,感谢分享,帮顶等之类。

我在跟着某前端视频学习。函数是如何调用,我基本上看明白了,也知道用法了。

我不太清楚的地方是:见视频截图
被调用的函数 (fn 2,在17-20行),如果写在调动用函数的代码(fn1, -11行)后面也没关系吗? 只要代码里有fn2的封装函数,不论在哪,程序都能把它找出来?

(如果我写,我会把函数fn 2, 写在最前面; 函数fn1 写在中间; 最后再15行)
000123.PNG







免费评分

参与人数 1热心值 +1 收起 理由
hang6210 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

魔幻冰扬 发表于 2020-2-17 16:05
函数的两种定义方法
1.函数声明
function a(){}
2.函数表达式
var b = function(){}

函数声明的,如果放全局,可以在任何地方调用,不管上下。原理:自行搜索【函数提升】
函数表达式的,调用的时候,只能放下面。原理:它和定义变量一样。比如:var c = 2.想用c,只能在它下面用

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
clearwater + 1 + 1 谢谢@Thanks!

查看全部评分

linguo2625469 发表于 2020-2-17 16:10
首先  函数提升  程序运行时会把所有变量或者函数提升(此时未执行函数内的方法或者赋值等一系列操作
然后程序自上而下执行 ,当读到第13行fn2(),会去第17行执行fn2()内的函数

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
clearwater + 1 + 1 谢谢@Thanks!

查看全部评分

 楼主| clearwater 发表于 2020-2-17 16:01

大哥,别来水帖。我的主帖第一行就说明了。您连看主帖都不看,在这里浪费时间,那您注册这个账号有啥用?

我需要用回答问题来支持。

别的支持不需要。
蜂窝煤 发表于 2020-2-17 16:02
1+x讲过这个问题,好像是只能在后面,我记不太清了。。。我去找找

樱染落霞红 发表于 2020-2-17 16:04
好,只能说你还没有弄懂面向对象的含义。你的说法是面向过程的逻辑,程序运行时会把每一个函数看成一个对象,第一个函数调用时程序会把第二个函数的对象实例化,在进行运算。
面向对象啊!
 楼主| clearwater 发表于 2020-2-17 16:08
魔幻冰扬 发表于 2020-2-17 16:05
函数的两种定义方法
1.函数声明
function a(){}

非常感谢您的帮助。说得很清楚。

也感谢楼主各位回答的大神。
PPZ丿皮皮智 发表于 2020-2-17 16:10
代码会有一段预读取的过程,他会先在GO(global object)里面先预读取好了两个fn函数然后在执行代码的。所以放后面也是没问题的。我最近也在学js推荐你一个教程哈https://ke.qq.com/course/231577?taid=2237351543933081
解决的话请给个评分哈
 楼主| clearwater 发表于 2020-2-18 08:12
原来我的问题又叫预解析或提升。

我昨天看到的视频之后产生疑惑,然后在之后第10个视频中,视频老师清清楚楚地解释清楚辣。老师说,这个问题是面试中常提问到的。

我忍不住夸自己一下,善于提问。



您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-14 02:23

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表