console.log(dt.getHours()); // 小时(0-23)
console.log(dt.getMinutes()); // 分钟(0-59)
console.log(dt.getMilliseconds); // 返回毫秒(0-999)
console.log(dt.getSeconds()); // 秒(0-59)
15.Math相关函数
**答案:**
Math.random()- 返回 0 ~ 1 之间的随机数
Math.abs(x) -``返回数的绝对值
Math.ceil(x)- 向上取整
Math.floor(x)- 向下取整
Math.round() 四舍五入
Math.max() 和 Max.min() 获取一组数据中的最大值和最小值
Math.PI 获取圆周率π 的值Math.pow() 获取一个值的多少次幂
Math.sqrt() 对数值开方
Math.pow(10,2) = 100;
Math.sqrt(100) = 10;
16.null和undefined的区别?
答案:
undefined是访问一个未初始化的变量时返回的值,
null是访问一个尚不存在的对象时所返回的值。因此,可以把undefined看作是空的变量,而null看作是空的对象。
17.和=有什么不同?
答案:
== 抽象相等,比较时,会先进行类型转换,然后再比较值;
===严格相等,判断两个值相等同时数据类型也得相同。
18.setTimeout和setInterval的区别是什么?
答案:
二者都是用来设置定时操作的。
setTimeout: 设置一个定时器,在定时器到期后执行一次函数或代码段
setInterval: 设置一个定时器,以固定的时间间隔重复调用一个函数或者代码段
19. 请说出以下代码执行结果
for (var i = 0; i < 3; i++) {
setTimeout(function() {
console.log(i);
}, 0);
console.log(i);
}
**答案:**0 1 23 3 3,执行过程如下
var i = 0;
console.log(i); i++;
console.log(i); i++;
console.log(i);i++;
setTimeout(function() {
console.log(i);
}, 0);
setTimeout(function() {
console.log(i);
}, 0);
setTimeout(function() {
console.log(i);
}, 0); //输出 0 1 2 3 3 3
20. 请说出(true+flase)>2+true的执行结果
答案:false
21. 当前代码块输出结果是什么?
var z=10;
function foo(){console.log(z);}
(function(funArg){var z=20;funArg();})(foo);
答案:10,自调用函数。
22. setTimeout(function(){},10)表示什么意思?
答案:每隔10毫秒调用一次函数。
23. 程序中捕获异常的方法?
答案:
try{
}catch(e){
}finally{
}
24. 以下代码执行结果?
var uname = ‘jack’
function change() {
alert(uname) // ?
var uname = ‘lily’
alert(uname) //?
}
change()
答案:undefined lily
25. 如何使用npm下载express模块?
答案:npm install express
26. split和join的区别?
答案:split()将字符串按照指定的字符分割成一个数组,并返回
join()将数组用指定的字符连接成一个字符串,并返回
27. 看下列代码会有什么样的输出?
var foo =“11”+2-“1”;
console.log(foo);
console.log(typeof foo);
答案:111 number
**28. foo = foo||bar ,这行代码是什么意思?**为什么要这样写?
答案:这种写法称之为短路表达式
相当于:
var foo;
if(foo){
foo=foo;
}else{
foo=bar;
}
常用于函数参数的空判断
29. 用js实现随机选取10–100之间的10个数字,存入一个数组,并排序
答案:
function getRandom(istart, iend){
var iChoice = iend -istart +1;
returnMath.floor(Math.random() * iChoice+ istart);
}
var iArray = [];
for(var i=0; i<10; i++){
var result= getRandom(10,100);
iArray.push(result);
}
iArray.sort();
30. 如何获取javascript三个数中的最大值和最小值?
答案:Math.max(a,b,c);//最大值
Math.min(a,b,c)//最小值
31. 实现冒泡排序?
vararray = [5, 4, 3, 2, 1];
vartemp = 0;
for(var i = 0; i <array.length; i++){
for(var j = 0; j <array.length - i; j++){
if(array[j] > array[j + 1]){
temp= array[j + 1];
array[j+ 1] = array[j];
array[j]= temp;
}
}
三、NODEJS
1. 同步和异步有何区别?
答案:
同步:指发送一个请求,需要等待返回,然后才能够发送下一个请求,有等待过程(在一个任务进行中时不能开启其他的任务)。
异步:指发送一个请求,不需要等待返回,随时可以再发送下一个请求,即不需要等待(在一个任务进行中时可以开启其他的任务)。
2. NodeJS中有哪些类型模块,文件操作用哪一个模块?
答案:
模块类型:核心模块、自定义模块、第三方模块。
文件操作:fs模块
3. 对NodeJS的优点和缺点提出自己的看法?
**答案:**CPU密集型任务的特点是进行大量的计算,消耗CPU资源,比如计算圆周率(上千位)、对视频进行编码等, 全靠CPU的运算能力 (一般用C语言,java)
IO(Input / Output)密集型任务,这类任务的特点是CPU消耗很少,大部分时间都在等待IO操作。常见的大部分任务都是IO密集型任务,比如Web应用(一般用脚本语言:python/Nodejs)。
Nodejs设计思想中以事件驱动、异步、非堵塞I/O密集型为核心,他提供的大多数api都是基于事件的、异步的风格。所以非常适合处理高并发请求。此外,与Node服务器交互的客户端代码是由js语言编写的,因此客户端和服务器端都用同一种语言编写,减少了成本。
4. 使用NodeJS完成登录功能(编写HTML页面和路由接口中的代码)?
答案:
HTML页面:
用户:
密码:
user.js路由
const express=require(‘express’);
const pool=require(‘…/pool.js’);
var router=express.Router();
router.post(‘/login’,(req,res)=>{
var obj=req.body;
var $uname=obj.uname;
if(!$uname){
res.send({code:401,msg:‘uname required’});
return;
}
var $upwd=obj.upwd;
if(!$upwd){
res.send({code:402,msg:‘upwd required’});
return;
}
var sql=‘SELECT * FROM xz_user WHERE uname=?AND upwd=?’;
pool.query(sql,[ u n a m e , uname, uname,upwd],(err,result)=>{
if(err) throw err;
if(result.length>0){
res.send({code:200,msg:‘login success’});
}else{
res.send({code:301,msg:‘login error’}); }
});
});
//路由器导出
module.exports=router;
5. 什么是Nodejs?
Nodejs是一个JavaScript的运行环境,是一个服务器端的“JavaScript解释器”,用于方便高效地搭建一些响应速度快、易于扩展的网络应用。它采用事件驱动、异步编程,为网络服务而设计
6. nodejs适用于哪些地方?
高并发、聊天、实时消息推送
7. npm是什么?
npm是nodejs包管理和分发的工具,用于管理node包。如安装、卸载、发布、查看等.
8. npm的好处是什么
通过npm,可以安装和管理项目的依赖,且可以指明依赖项的具体版本号。
9. Node.js中导入模块和导入js文件写法上有什么区别?
nodejs引入模块,直接使用名字导入即可
const express = require(“express”);
导入js文件,需要使用文件的路径,如:
const student = require(“./pool.js”);
10. console有哪些常用方法?
console.log/info/error/warn/time/timeEnd
11. express response有哪些常用方法?
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。






既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)

这里分享一份由字节前端面试官整理的「2021大厂前端面试手册」,内容囊括Html、CSS、Javascript、Vue、HTTP、浏览器面试题、数据结构与算法。全部整理在下方文档中,共计111道
HTML
-
HTML5有哪些新特性?
-
Doctype作⽤? 严格模式与混杂模式如何区分?它们有何意义?
-
如何实现浏览器内多个标签页之间的通信?
-
⾏内元素有哪些?块级元素有哪些? 空(void)元素有那些?⾏内元 素和块级元素有什么区别?
-
简述⼀下src与href的区别?
-
cookies,sessionStorage,localStorage 的区别?
-
HTML5 的离线储存的使用和原理?
-
怎样处理 移动端 1px 被 渲染成 2px 问题?
-
iframe 的优缺点?
-
Canvas 和 SVG 图形的区别是什么?

JavaScript
-
问:0.1 + 0.2 === 0.3 嘛?为什么?
-
JS 数据类型
-
写代码:实现函数能够深度克隆基本类型
-
事件流
-
事件是如何实现的?
-
new 一个函数发生了什么
-
什么是作用域?
-
JS 隐式转换,显示转换
-
了解 this 嘛,bind,call,apply 具体指什么
-
手写 bind、apply、call
-
setTimeout(fn, 0)多久才执行,Event Loop
-
手写题:Promise 原理
-
说一下原型链和原型链的继承吧
-
数组能够调用的函数有那些?
-
PWA使用过吗?serviceWorker的使用原理是啥?
-
ES6 之前使用 prototype 实现继承
-
箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?
-
事件循环机制 (Event Loop)

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

g_convert/476288e164f5711c5c11e55a79185bd8.png)
JavaScript
-
问:0.1 + 0.2 === 0.3 嘛?为什么?
-
JS 数据类型
-
写代码:实现函数能够深度克隆基本类型
-
事件流
-
事件是如何实现的?
-
new 一个函数发生了什么
-
什么是作用域?
-
JS 隐式转换,显示转换
-
了解 this 嘛,bind,call,apply 具体指什么
-
手写 bind、apply、call
-
setTimeout(fn, 0)多久才执行,Event Loop
-
手写题:Promise 原理
-
说一下原型链和原型链的继承吧
-
数组能够调用的函数有那些?
-
PWA使用过吗?serviceWorker的使用原理是啥?
-
ES6 之前使用 prototype 实现继承
-
箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?
-
事件循环机制 (Event Loop)

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-JLtnnvAu-1712928410898)]
本文介绍了JavaScript的基本语法和数学函数,如console.log用法、Math对象的常用函数,以及null和undefined的区别。还涵盖了Node.js中的异步与同步、模块系统、定时器、错误处理、数组操作和事件驱动编程等内容。
4万+

被折叠的 条评论
为什么被折叠?



