2024年最全JavaScript知识点的总结(1),2024年最新在线面试指南是什么

最后

文章到这里就结束了,如果觉得对你有帮助可以点个赞哦

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

1.Number

2.Boolean

3.undefined

4.Null

5.String

6.Object

九. 算术运算符

+、-、*、/、%。

1.+ 运算符:运算规则 * 如果两个都是Number则,则就按照普通的数学加法运算。 * 如果有一个是字符串,就按照字符串的串联的方式连接。(如果另外一个不是字符串,则先转换成字符串再连)。 * 如果有一个是NaN,则结果就是NaN。 如果同时是Infinity或-Infinity,则结果就是Infinity或-Infinity。 * 如果一个是Infinity另外一个是-Infinity,则结果为NaN。 2.- 运算符:运算符规则 - 如果两个都是Number则,则就按照普通的数学减法运算。 - 如果有一个操作数是字符串、布尔值、null 或undefined,则先在后台调用Number()转型函数将其转换为数值,然后再根据正常减法计算。如果转换的结果有一个是NaN,则减法的结果就是NaN * 如果有一个操作数是对象,则调用对象的valueOf()方法以取得表示该对象的数值。如果得到的值是NaN,则减法的结果就是NaN。如果对象没有valueOf()方法,则调用其toString()方法并将得到的字符串转换为数值(了解) 3. 运算符:运算符规则。 - 运算规则同减法。 1. / 运算符:运算规则 - 就是普通的除法运算,运算规则同 * 4. %运算符:运算规则 - 求余(求模)运算。

十.javaScript中常见的运算符

1.逻辑与 ( 只要有一个是false,则返回false)

2.逻辑或 (只要有一个是true,结果就是true)

3.逻辑非 (先转换成Boolean值,再取反得到最终的结果)

&&()和|| 的结果总结:

  1. 如果第一个能够决定结果,则结果就是第一个表达式的值

  2. 如果第一个不能决定结果,则结果就是第二个表达式的值

十一.JavaScript中的判断语句

1.if语句

语法:

if(condition){

//语句1

}

2.if…else语句

语法:

if(condition){

//语句1

}

else{

//语句2

}

  1. if…else if…elsif… 语句
语法:

if(condition1){

//语句1

}

else if(condition2){

//语句2

}

else if(condition3){

//语句n

}

4.if…else if…else …else语句

语法:

if(condition1){

//语句1

}

else if(condition2){

//语句2

}

else if(condition3){

//语句n

}

else{

//else语句

}

  1. switch条件语句
语法:

switch (expression) {

case value1:

//语句1

break;

case value2:

//语句2

break;

case value3:

//语句3

break;

case value4:

//语句4

break;

default:

}

十二.JavaScript中的循环结构

1.for循环

语法:

for(表达式1; 表达式2; 表达式3){

//循环体

}

注意:

  • 3个表达式的都可以省略。

  • 对表达式1和表达式3省略,对for循环没有任何影响,只是少执行了代码而已。

  • 如果表达式2省略,表示此处为true,那么这个循环就是死循环。

  • 如果第一次检查表达式2的时候就是false,则循环体内的代码可能一次也不执行。

2.while循环

语法:while(condition){ }

注意:

  • condition不能省略。如果省略为语法错误

  • while循环也有可能一次也不执行。

  1. do…while循环

语法: do{ //循环体}while(condition);

注意:

  • condition条件不能省略,省略语法错误。

  • 由于先执行在判断,所以,对do…while 循环来说,循环体至少执行一次。

十三. javaScript中的两个特殊控制语句

1.break语句

作用:在循环体中,break会提前结束循环

例如:

for(var i=0;i<6;i++){

if(i==5){

break;

}

console.log(i);

}

2.continue语句

作用:在循环体中,continue会结束本次循环,不会执行剩余的代码,不过会继续执行它外层的循环

例如:

for(var i=0 i<10;i++){

if(i==6){

continue;

}

}

十四.自定义函数

1.函数的声明

语法:

function 函数名(形式参数1, 形式参数2, …){

//函数体

}

例如:

function mer(a,b,c){

var m=a+b;

}

2.函数的调用

语法:

方法名(实参1,实参2);

例如:

function mer(m,n){

var m=n;

}

alert(mer(10));

3.函数的命名规范

十五.变量的作用域

1.全局变量

定义: 在函数外部声明的变量

例如:

var m=13;

alert(m);

2.局部变量

定义: 在函数体内部声明的变量

例如:

function f(){

var m=“234”;

alert(m);

}

3.匿名函数

1.定义:没有声明函数名的函数

例如:

var m=function(){

alert(“Hello world”);

}

m();

2.注意点:

  • 匿名函数除了没有函数名以外,与其他函数没有任何区别

  • 如果想要在其他地方调用该函数,则需要先声明一个变量,并把该函数的值赋值给声明的变量

  • 可以将变量名做为函数名调用

3.匿名函数的作用

  • 可以将函数表达式存储在变量中

  • 可以将匿名函数当作参数来传递

4.匿名函数的立即执行

1.语法:

  • (function(){

alert(“立即执行”);

}());

2.注意点:

  • 要把匿名函数用一对圆括号括起来,作为一个整体看

  • 在函数的最后面添加一对圆括号来表示调用函数

3.函数递归调用

  1. 定义:

在函数的内部调用当前的函数

  1. 需要满足的条件
  • 要有结束条件

  • 递归不能无限的递归下去,否则会溢出。

  1. 总结:

函数的调用原理与数据结构栈的实现是一致的。

十六.JavaScript中数组的特点

1.数组的长度是可以动态改变的

2.在同一个数组中可以存储不同的数据类型

3.每一个数组中都有一个 length的属性,表示的是数组中元素的个数

十七.数组的创建
  1. 数组中的两种基本创建方式
1.字面量的方式

例如:[“a”, 5, “b”,8]

2.构造函数

例如: new Array(数组长度);

注意点:
  • 在构造函数创建数组对象时,最后一个元素后面不需要添加逗号

  • 在构造函数中只传入一个Number值,这个值一定要大于 0

  • 在构造函数创建数组对象时,new关键字可以省略

3.修改和访问数组中的元素

例如:

var arr=[10,20,30,40,50,60];

alert(arr[0]);

arr[3]=100;

4.数组中的长度

例如:

var arr = [10, 20, 60, 5, 7];

alert(arr.length);

十八.数组的遍历

1.遍历数组的方法
  • 普通的for循环

  • for…in

  • for each

  • for… of

2.普通for循环的遍历

例如:

var arr=[20,30,50,60,78];

for (var i=0;i<arr.length;i++){

console.log(arr[i]);

}

3.for …in循环的遍历

例如:

var arr=[50,30,60,12,45];

for (var index in arr){

console.log(arr);

}

注意:

for…in遍历数组时,遍历出来的是数组的下标

4.for each方法的遍历

例如:

var arr=[23,4,56,7,80]; arr.forEach(function(ele,index){ alert(ele); });

十九.javaScript中数组的常用方法

1.转换方法:

toString()

作用:返回由数组中每个值得字符串形式拼接而成的一个以逗号分割的字符串

例如:

var arr=[2,3,45,6,78];

alert(arr.toString());

2.join()方法

作用:可以使用指定的连接符连接

例如:

var arr = [50, 20, 10, 5, 15, 6];

alert(arr.join(“=”));

二十.JavaScript中站的方法

1.入栈 ( push() )

作用:把新的元素添加到数组的后面

2.出栈 ( pop() )

作用:把数组中的最后一个元素从数组中移除

例如:

var arr=[2,3,4,5,67];

var num=arr.push(“100”);

var hom=arr.pop();

alert(num);

alert(hom);

3.队列方法

1.shift()

作用:从队列中的头部移除元素

2.unshift()

作用:向队列尾部添加元素

例如:

var arr=[23,45,67];

var num=arr.shift();

var bak=arr.unshift();

alert(num);

alert(bak);

4.数组中的倒序

reverse():

作用:将数组中的元素进行倒序

例如:

var arr=[34,56,7,9];

arr.reverse();

alert(arr);

5.javaScript中查找指定元素在数组中的索引
1. indexOf(item,num)

作用:从num的位置开始向后查找item第一次出现的位置

2.lastIndex(item,num)

作用:从num的位置开始向前查找item第一次出现的位置

例如:

var arr=[2,3,5,3,6,2,8,8];

alert(indexOf(“2”,2);

alert(lastIndeOf(“3”,4);

6.获取新的数组
1.concat(arrayX,arrayX,…,arrayX)

作用:用于连接多个数组,并且不会对原数组做任何的改变

例如:

var arr=[2,34,56];

var arr1=[87,65,43];

var newArr=arr.concat(arr1);

alert(newArr);

2. slice(start,end)方法

作用:截取数组,并且返回结渠道的新数组

例如:

var arr=[“a”,“s”,“d”,“f”,“g”];

var arr1.slice(0,3);

alert(arr1);

3.splice(index,howmany,item1,…,itemX) 方法

作用:向数组中添加元素,删除元素,替换元素

例如:

var arr=[2,3,4,“as”,d,f];

var num= arr.splice(1,3);

alert(num);

var num1=arr.splice(1,0,“m”,“n”);

alert(num1);

var num2=arr.splice(1,2,“2”,“3”);

alert(num2);

二十一.javaScript中数组的检测
1.instanceof运算符

作用:会返回一个Boolean值,指出对象是否是特定构造函数的一个实例

例如:

var arr = [];

最后

你要问前端开发难不难,我就得说计算机领域里常说的一句话,这句话就是『难的不会,会的不难』,对于不熟悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;当学会这项技术之后,知道什么什么技术能做到什么做不到,只是做起来花多少时间的问题而已,没啥难的,所以就是『会的不难』。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

我特地针对初学者整理一套前端学习资料

前端路线图

vue.js的36个技巧

arr=[2,34,56];

var arr1=[87,65,43];

var newArr=arr.concat(arr1);

alert(newArr);

2. slice(start,end)方法

作用:截取数组,并且返回结渠道的新数组

例如:

var arr=[“a”,“s”,“d”,“f”,“g”];

var arr1.slice(0,3);

alert(arr1);

3.splice(index,howmany,item1,…,itemX) 方法

作用:向数组中添加元素,删除元素,替换元素

例如:

var arr=[2,3,4,“as”,d,f];

var num= arr.splice(1,3);

alert(num);

var num1=arr.splice(1,0,“m”,“n”);

alert(num1);

var num2=arr.splice(1,2,“2”,“3”);

alert(num2);

二十一.javaScript中数组的检测
1.instanceof运算符

作用:会返回一个Boolean值,指出对象是否是特定构造函数的一个实例

例如:

var arr = [];

最后

你要问前端开发难不难,我就得说计算机领域里常说的一句话,这句话就是『难的不会,会的不难』,对于不熟悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;当学会这项技术之后,知道什么什么技术能做到什么做不到,只是做起来花多少时间的问题而已,没啥难的,所以就是『会的不难』。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

我特地针对初学者整理一套前端学习资料

[外链图片转存中…(img-wbyI9ARd-1715646162743)]

[外链图片转存中…(img-S38Mcye4-1715646162743)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值