首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

50道JavaScript详解面试题,你需要了解一下

答案是第二种情况(打印出queueMicroTask更好),因为来自queueMicroTask的任务在调用栈之后且在调用事件循环之前被调用,对于setTimeout而言,任务是eventQeue的一部分...2、控制台输出是什么? 答案是输出10,因为将对象传递给函数时的对象相似,仅传递其值,而不传递对内存位置的实际引用。这就是为什么更改仅影响函数范围内的参数的原因。 3、控制台输出是什么?...结果,只有都为1的位保持1,返回的输出0011,它是3的二进制表示形式, 因此3记录在控制台上。 14、Object。[[Prototype]]的值是什么?...[[原型],它会返回undefined在控制台上。该对象位于原型链的顶部,当浏览器查找访问属性的值时,它将遍历原型链,直到找到该值或直到不再遍历所有原型为止。 15、值合并运算符做什么?...34、使用缩减函数数字数组中找到最小值。 35、JavaScript中的子程序是什么? 子例程是主例程中遇到的函数,然后将其保存到对象并存储以供以后使用。

3.5K40

43道JavaScript面试题

然后,我们打印a[b],它实际上是a["Object object"]。 我们将其设置456,因此返回456。 ---- 30. 下面代码的输出是什么?...将callback推送到WebAPI后,setTimeout函数本身(但不是回调!)堆栈中弹出。 image.gif 现在,调用foo,并打印First。...image.gif foo堆栈弹出,baz被调用,并打印Third。 image.gif WebAPI不能只是在准备就绪时将内容添加到堆栈中。 相反,它将回调函数推送到一个称为任务队列的东西。...如果堆栈,则会占用队列中的第一个内容并将其推送到堆栈中。 image.gif bar被调用,Second被打印,它从栈中弹出。 ---- 31. 单击按钮时event.target是什么?....bind方法会返回函数的拷贝值,带有绑定的上下文! 它不会立即执行。 ---- 34. 下面代码的输出是什么?

1.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

送你43道JavaScript面试题

然后,我们打印a[b],它实际上是a["Object object"]。我们将其设置456,因此返回456。 ---- 30. 下面代码的输出是什么?...将callback推送到WebAPI后,setTimeout函数本身(但不是回调!)堆栈中弹出。 ? 现在,调用foo,并打印First。 ?...foo堆栈弹出,baz被调用,并打印Third。 ? WebAPI不能只是在准备就绪时将内容添加到堆栈中。相反,它将回调函数推送到一个称为任务队列的东西。 ? 这是事件循环开始工作的地方。...如果堆栈,则会占用队列中的第一个内容并将其推送到堆栈中。 ? bar被调用,Second被打印,它从栈中弹出。 ---- 31. 单击按钮时event.target是什么?....bind方法会返回函数的拷贝值,带有绑定的上下文!它不会立即执行。 ---- 34. 下面代码的输出是什么?

1.4K10

C进阶:文件的基础操作

= EOF) //判断是否读取到文件末尾 { ch = fgetc(pfread); //文件中读取字符 printf("%c", ch); //打印读取道德字符 } fclose...(pfread); pfread = NULL; return 0; } 打印结果: 4.文本行的读与写 fgets 与 fputs 文本行的读取 fgets : 1.描述: 指定的流...参数; 如果到达文件末尾或者没有读取到任何字符,str 的内容保持不变,并返回一个指针; 如果发生错误,返回一个指针; 文本行的写入 fputs : 1.描述:把字符串写入到指定的流...所以 feof 是用来判断文件是什么原因结束的。 2.一些判断文件结束的总结 1....= EOF) // 标准C I/O读取文件循环 { putchar(c); } //判断是什么原因结束的 if (ferror(fp)) puts("I/O error when

8610

送你43道JavaScript面试题

然后,我们打印a[b],它实际上是a["Object object"]。 我们将其设置456,因此返回456。 ---- 30. 下面代码的输出是什么?...将callback推送到WebAPI后,setTimeout函数本身(但不是回调!)堆栈中弹出。 ? 现在,调用foo,并打印First。 ?...foo堆栈弹出,baz被调用,并打印Third。 ? WebAPI不能只是在准备就绪时将内容添加到堆栈中。 相反,它将回调函数推送到一个称为任务队列的东西。 ? 这是事件循环开始工作的地方。...如果堆栈,则会占用队列中的第一个内容并将其推送到堆栈中。 ? bar被调用,Second被打印,它从栈中弹出。 ---- 31. 单击按钮时event.target是什么?....bind方法会返回函数的拷贝值,带有绑定的上下文! 它不会立即执行。 ---- 34. 下面代码的输出是什么?

1.6K30

送你43道JavaScript面试题

然后,我们打印a[b],它实际上是a["Object object"]。 我们将其设置456,因此返回456。 ---- 30. 下面代码的输出是什么?...将callback推送到WebAPI后,setTimeout函数本身(但不是回调!)堆栈中弹出。 ? 现在,调用foo,并打印First。 ?...foo堆栈弹出,baz被调用,并打印Third。 ? WebAPI不能只是在准备就绪时将内容添加到堆栈中。 相反,它将回调函数推送到一个称为任务队列的东西。 ? 这是事件循环开始工作的地方。...如果堆栈,则会占用队列中的第一个内容并将其推送到堆栈中。 ? bar被调用,Second被打印,它从栈中弹出。 ---- 31. 单击按钮时event.target是什么?....bind方法会返回函数的拷贝值,带有绑定的上下文! 它不会立即执行。 ---- 34. 下面代码的输出是什么?

1.5K20

C:02---scanf、printf

右对齐5位,保留小数点后m位(%d.mf)%f、%lf默认输出6位小数 ②宽度:%md(打印m,右对齐,多出m位照常打印)。...0补齐(%010d)) 自己控制输出位 printf("%*d",3,2); //打印2,向右对齐3位 printf("%-*d",3,2); //打印2,向左对齐3位 返回值 输出正确:返回打印字符串的长度...实际上printf的使用情况来看,我们不难发现一个规律,就是无论其可变的参数有多少个,printf的第一个参数总是一个字符串。 而正是这第一个参数,使得它可以确认后面还有有多少个参数尾随。...其调用格式: scanf("",); scanf()函数返回成功赋值的数据项数,出错时则返回EOF。 其控制串由三类字符构成: 1。格式化说明符; 2。...hh,ll同上h,l仅对C99有效。

1.1K20

37个JavaScript基本面试问题和解答(建议收藏)

考虑到这一点,最简单,最清洁的ECMAScript-6之前的解决方案(即使将非数字值(例如字符串值)传递给该函数,该解决方案也具有足够的可靠性以返回false)将成为以下用法按位异或运算符: function...原因是当函数执行时,它检查是否存在本地x变量尚未声明它,因此它不会查找全局变量。) 30、你如何克隆一个对象?...a[10] = 99; b)这个输出是什么? console.log(a[6]); a)它不会崩溃。 JavaScript引擎将使阵列插槽3至9成插槽”。...b)在这里,a [6]将输出未定义的值,时隙仍,而不是未定义的。在某些情况下,这可能是一个重要的细微差别。...console.log(typeof typeof 1); 打印结果:string typeof 1将返回“number”,typeof“number”将返回字符串。 37、以下代码输出什么?

2.9K10

如何避免 Java 中的“NullPointerException”

所以,编译器的角度来看,没有错。Null 属于 String 类型,Java 甚至不会打印警告。实际上,您甚至可以编译下一个代码:可编译的代码。...使用 map 函数,我们可以编写与前面的语句类似的等价物: 与简单的检查相比,可选是否提供好处?是的,它确实。...Optional 向我们保证我们在 ifPresent lambda 中使用的数据不为。但是,如果用户或地址怎么办?然后, ifPresent 将被静默忽略。...可选功能在 Java 1.8 中发布,并没有被广泛使用。有几个原因: 它非常冗长并且污染了代码(我个人认为这是主要原因,Java 本身非常冗长,而使用 Optional 它变得非常大)。...它说我们返回一个可能为字符串,并且它没有用 @Nullable 注释标记。

2.7K20

get_name(),get_full_name(),get_type_name()...这些“小函数”能分清楚吗?

如上代码中jerry_component中调用的小函数打印出会是什么字符串呢? 大家先猜猜再看下面的答案: 1.get_name() 会打印出: “u_jerry_so_cool”。 大家注意了!...其实我们心里还是应该有点数比较好~ 2.get_full_name()会打印出: “uvm_test_top.u_jerry_env.u_jerry_so_cool”。...记住打印的路径不是UVM树根开始的!是树根的下一级。(Tip:树根路径对应“__top__”) 3.get_type_name()会打印出: “jerry_component”。...的get_type_name()函数重载,这个函数就会返回class名字!...它可能只是羞于表达…… 当然除了这个羞于表达的原因,还有一个原因:就是uvm_component使用set_name的时候希望其本身的名字是的才能改名!

3.7K10

接口测试平台代码实现153:加密算法更新

继续更新接口测试平台: 先来改一系列的小bug:(admin后台数据的展示None时报错) 这个bug是什么意思呢?就是当我们删除一个数据时,结果报错说,返回的必须是str 而非None。...这个问题的原因在于我们的models.py中的 返回展示部分: 返回的self.name, 而创建的时候,默认又是的None。所以这里会报错。所以为了以防同类情况再次出现。...当前函数如下: 注意,我们已经对函数进行步骤划分,且完成到了url中提取需要处理的字段名。...打印的效果如下,算法目前可识别出来最终的加密字段名为sign,需要有三个变量,token,userid,time, 其中token 我们成功找到值123abc,userid 和 time暂时。...让我们开始body中取: body一共我们支持俩种类型,也就是form-data/x-www-form-urlencoded的 二维列表字符串,还有raw-json的字典字符串

19730

【C语言】文件操作

而且他的返回值也是一个指向打开这个文件的指针,如果打开失败,他会返回一个指针,所以在接收fopen函数返回值时,我们一般还要判断返回值是否有效,也就是确定他是否指针 3.3如何利用库函数来读写文件...参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno 的值来决定要输出的字符串。 在库函数中有个error变量,每个error值对应着以字符串表示的错误类型。...2.perror的功能: 直接打印错误信息(里面包含我们所输入的信息和错误码所对应的信息一并打印出来) 3.strerror的功能: 把错误码对应的错误信息的字符串地址返回(配合errno使用,errno...EOF) // 标准C I/O读取文件循环 { //这里循环的条件就是,读取的字符不是EOF,一直将字符输出 putchar(c); } //文件读取之后结束了,然后判断是什么原因结束的...EOF(fgetc),或者NULL(fgets) 例如: fgetc判断是否EOF(fgetc返回读取int的字符,或返回EOF以指示错误或文件结束) fgets判断是否NULL(返回NULL

3.7K10

带你搞清楚strtok函数和strerror函数的使用!

• strtok函数的第⼀个参数 NULL ,函数将在同⼀个字符串中被保存的位置开始,查找下⼀个标 记。...strtok(NULL, sep)) { printf("%s\n", str); } return 0; } 我们来看一下这串代码,这串代码的作用是将给定的192.168.6.111以.分割线分别打印字符串...NULL(指针),这个循环就会继续,然后str再次进行strtok分割,最后分割完成。...接下来就会打印出我们想要的效果; 二、strerror函数的使用 char* strerror( int errnum ); 我们先来看一下这个字符串函数的作用: strerror函数可以把参数部分错误码对应的错误信息的字符串地址返回来...strerror函数就可以将错误对应的错误信息字符串的地址返回

6210

金九银十: 50 个JS 必须懂的面试题为你助力

它允许你内部函数访问外部函数的作用域。 在JS中,每次创建函数时都会创建闭包。 要使用闭包,只需在另一个函数内定义一个函数并暴露它。 问题16:列出一些内置方法及其返回的值。...indexOf() 它返回指定值第一次出现时调用字符串对象中的索引。 length() 它返回字符串的长度。 pop() 它从数组中删除最后一个元素并返回该元素。...null是引用数据类型,是对象,表示对象 undefined是null派生出来的 所以undefined==null true 问题 30:undeclared 和 undefined 区别?...if条件语句使用eval求值,因此eval(function f(){})返回函数f(){}(真)。...方法四: while(arrayList.length) { arrayList.pop(); } 上面的实现也可以数组,通常不建议经常使用这种方式。

6.5K31

关于WinExec和System的比较

⑶ 返回值:   若函数调用成功,则返回值大于31。若函数调用失败,则返回下列之一:   ① 0:系统内存或资源已耗尽。   ...lpFile:一个结束的字符串地址,此字符串指定要打开或打印的文件或者是要打开或搜索的文件夹。   ...该命令向命令解释程序提出打开、浏览或打印文档或文件夹的请求,虽然可以用ShellExecute运行程序,通常只发送文档名,而命令解释程序则决定要运行那个程序。...⑶ 返回值:   若函数调用成功,则返回值不为0;若函数调用失败,返回0。   ShellExecute和WinExec命令用于简单的作业。...有时,不想设置任何信息,也必须传递一个有效的指针给结构(确定设置大小到cb,及设置dwFlags成员0)。参数lpProcessInformation返回进程和线程句柄,还包括进程和线程ID。

92820

Go语言核心36讲(Go语言进阶技术十六)--学习笔记

这其实很简单,在调用panic函数时,把某个值作为参数传给该函数就可以了。由于panic函数的唯一一个参数是接口(也就是interface{})类型的,所以语法上讲,它可以接受任何类型的值。...如果这个值是error类型的,那么让它的Error方法返回它定制的字符串表示形式就可以了。 对于此,你可能会想到fmt.Sprintf,以及fmt.Fprintf这类可以格式化并输出参数的函数。...因此,不同的数据类型分别编写这两种方法总是首选。 可是,这与传给panic函数的参数值又有什么关系呢?其实道理是相同的。至少在程序崩溃的时候,panic 包含的那个值字符串表示形式会被打印出来。...Go 语言的内建函数recover专用于恢复 panic,或者说平息运行时恐慌。recover函数无需任何参数,并且会返回一个接口类型的值。...我刚才说了,无论函数结束执行的原因是什么,其中的defer函数调用都会在它即将结束执行的那一刻执行。即使导致它执行结束的原因是一个 panic 也会是这样。

40901

50 个JS 必须懂的面试题为你助力金九银十

它允许你内部函数访问外部函数的作用域。 在JS中,每次创建函数时都会创建闭包。 要使用闭包,只需在另一个函数内定义一个函数并暴露它。 问题16:列出一些内置方法及其返回的值。...内置方法 返回值 CharAt() 它返回指定索引处的字符。 Concat() 它连接两个或多个字符串。 forEach() 它为数组中的每个元素调用一个函数。...indexOf() 它返回指定值第一次出现时调用字符串对象中的索引。 length() 它返回字符串的长度。 pop() 它从数组中删除最后一个元素并返回该元素。...null是引用数据类型,是对象,表示对象 undefined是null派生出来的 所以undefined==null true 问题 30:undeclared 和 undefined 区别...方法四: while(arrayList.length) { arrayList.pop(); } 上面的实现也可以数组,通常不建议经常使用这种方式。

4.4K30

Java面试集锦(一)之Java异常

String getMessage() - 此方法返回消息String of Throwable,并且可以在通过构造函数创建异常时提供消息。...此方法getMessage()的可抛出类实现只是使用方法来返回异常消息。 synchronized Throwable getCause() - 此方法返回异常的原因或null id,原因未知。...例如,我可以编写一个方法来字符串中删除所有元音。确保不传递空字符串是调用者的责任。我可能会改变方法来处理这些场景,理想情况下,调用者应该处理这个问题。 6....线程“main”中的异常java.lang.ArithmeticException: 每当main方法抛出任何异常时,它都会打印异常是控制台。...第一部分解释了main方法抛出异常,第二部分打印异常类名,然后在冒号后打印异常消息。 图片 10.

99140
领券