当前位置:   article > 正文

JS “运算符”“数组 ”学习笔记_?? 运算符 js 数组

?? 运算符 js 数组

2022年7月6日 学习记录博客。今日学习内容:运算符和数组。学习时长:6h。

运算符

复习target

  • 能够使用常用运算符
  • 能够说出前置递增和后置递增的区别
  • 能够说出运算符的优先级

目录

运算符

1.运算符

2.算术运算符

3.递增和递减运算符

4. 比较运算符

5.逻辑运算符

6. 赋值运算符

7. 运算符优先级

数组

1.数组概念

2.创建数组

3.访问数组

4.遍历数组

5.数组中新增元素

6.数组案例


1.运算符

运算符(operator)也被称为操作符,是用于实现赋值、比较和执行算术运算等功能的符号。

2.算术运算符

2.1 概念:算术运算使用的符号,用于执行两个变量或值的算术运算。

2.2 浮点数的精度问题

浮点数值的最高精度是17位小数,在进行算术运算时精度远远不如整数,故往往会出错。

2.3 优先级

算术运算符的优先级,先乘除,后加减,有小括号先算小括号里的。

2.4 表达式和返回值

表达式:由数字、运算符、变量等组成的式子。// 1+1

表达式最终都会有一个结果,返回给我们,我们称之为 返回值。

3.递增和递减运算符

3.1 前置递增、递减运算符

++num(--num)前置递增,就是自加1,类似于 num = num + 1,但是 ++num写起来更为简单。

口诀:先自加,后返回值

  1. 示例
  2. var p = 10;
  3. console.log( ++p + 10); // 21

3.2 后置递增、递减运算符

num++(num--)前置递增,就是自加1,类似于 num = num + 1,但是 num++ 写起来更为简单。

口诀:先返回值,后自加

开发时,大都属于后置递增、递减运算符,并且代码独占一行。

  1. 示例
  2. var p = 10;
  3. console.log( p++ + 10); // 20

4. 比较运算符

4.1 概念

比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true / false)作为比较运算的结果。

“ == ” 会默认转换数据类型。例如将 字符串 ‘18’ 转换成 数值型 18。

  1. console.log( 18 == '18') //true
  2. console.log( 18 === '18') // false

5.逻辑运算符

概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断。

5.1 逻辑与 &&

两边都是 true 才返回 true,否则返回 false

5.2 逻辑或 ||

两边都是 false 才返回 false,否则返回 true

5.3 逻辑非 !

逻辑非(!)也叫取反符,用来去一个布尔值相反的值,如 true 的相反值是 false。

5.4短路运算(逻辑中断)

短路运算的原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值;

逻辑与

  • 语法:表达式1 && 表达式2
  • 如果第一个表达式的值为真,则返回表达式2
  • 如果第一个表达式的值为假,则返回表达式1
  1. console.log(123 && 456) //456
  2. console.log(0 && 456) //0
  3. console.log(0 && 1 + 2 && 456 * 56789) //0 表达式1 为假,
  4. 逻辑中断不再运算,返回表达式1

逻辑或

  • 语法:表达式1 || 表达式2
  • 如果第一个表达式的值为真,则返回表达式1
  • 如果第一个表达式的值为假,则返回表达式2

 

6. 赋值运算符

概念:用来把数据赋值给变量的运算符

7. 运算符优先级

  • 一元运算符里面的逻辑非优先级很高
  • 逻辑与 比 逻辑或 优先级高

数组

复习 target

  • 知道为什么有数组
  • 如何创建数组
  • 如何获取数组中的元素
  • 如何对数组进行遍历
  • 如何给数组新增一个元素
  • 独立完成冒泡排序的案例

目录

1.数组概念

2.创建数组

3.访问数组

4.遍历数组

5.数组中新增元素

6.数组案例


1.数组概念

概念:

数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的优雅方式。

2.创建数组

JS中创建数组有两种方式:

  • 利用 new 创建数组
  • 利用数组字面量创建数组(常用)

2.1利用 new 创建数组

var 数组名 = new Array();

2.2 数组字面量创建数组

数组的字面量是方括号 [ ]

声明数组并赋值称为数组的初始化

2.3 数组元素的类型

数组中可以存放任意类型的数据,例如字符串,数字,布尔值等

3.访问数组

3.1 数组的索引

索引(下标):用来访问数组元素的序号(数组下标从0开始)。

数组可以通过索引来访问、设置、修改对应的数组元素,我们可以通过 “ 数组名[ 索引 ] ” 的形式来获取数组中的元素。

4.遍历数组

“ 数组名 [ 索引号 ] ” 的方式,可以单独一项的取出数组。

遍历数组:就是把数组中的每个元素从头到尾都访问一次。

数组长度:数组名.length

  1. var arr = ['red','green','blue'];
  2. for (var i = 0; i < arr.length; i++){
  3. console.log(arr[i]);
  4. }
  1. // 案例1:求数组 [2,6,7,8,10] 里面所有元素的和以及平均值
  2. var arr = [2,6,7,8,10]
  3. var sum = 0;
  4. var average = 0;
  5. for (var i = 0; i < arr.length; i++){
  6. sum = sum + arr[i];
  7. }
  8. average = sum / arr.length;
  9. console.log(sum,average);
  10. //案例2:求数组 [2,6,7,8,10] 里面所有元素的最大值
  11. var arr = [2,6,7,8,10];
  12. var max = arr[0];
  13. for (var i = 0; i < arr.length; i++ ){
  14. if(arr[i] > max){
  15. max = arr[i];
  16. }
  17. }
  18. console.log('该数组中最大的值是:'+ max);
  19. //案例3:将数组['red','green','blue','pink']转换为一串的字符串,并且用 | 或其他符号分割开。
  20. var arr = ['red','green','blue','pink'];
  21. var sty = '';
  22. var sep = '|';
  23. for (var i = 0; i < arr.length; i++){
  24. str += arr[i] + sep;
  25. }
  26. console.log(str);

5.数组中新增元素

5.1 通过修改 length 长度新增数组元素

  • 可以通过修改 length 长度来实现数组扩容的目的
  • length 属性是可读写的

其中 索引号是4,5,6的空间没有赋值,默认值是undefined。

5.2 通过修改数组索引新增数组元素

  • 可以通过修改数组索引的方式 追加或修改 数组元素
  • 不能直接给数组名赋值,否则会覆盖掉以前的数据

修改数组索引是最常用的方式

  1. //案例1 新建一个数组,里面存放100个整数(1-100
  2. //1. 声明一个空数组arr
  3. //2. 循环中的计数器i 可以作为数组元素存入
  4. //3. 由于数组的索引号是从0开始的,因此计数器从0开始更合适,存入的数组元素要+1
  5. var arr = [];
  6. for (var i = 0; i < 100; i++){
  7. arr[i] = i + 1;
  8. }
  9. console.log(arr);
  10. //案例2:筛选数组。将数组[2,0,6,1,77,0,52,0,25,7]中大于等于 10 的元素筛选出来,放入新数组
  11. //1.声明一个新的数组用于存放新数据 newArr
  12. //2.遍历原来的旧数组,找出大于等于10的元素。
  13. //3.依次追加给新数组 newArr。
  14. var arr = [2,0,6,1,77,0,52,0,25,7];
  15. var Arr = [];
  16. var j = 0;
  17. for (var i = 0; i < arr.length; i++){
  18. newArr[j] = arr[i];
  19. j++;
  20. }
  21. console.log(newArr);
  22. // 可以不使用“j”变量,使用 newArr.length

6.数组案例

案例1:将数组 [ 'red','green','blue','pink','purple'] 的内容倒过来存放

  1. //1.声明一个新数组newArr
  2. //2.把旧数组索引号第4个取过来(arr.length - 1),给新数组索引第0个元素(newArr.length
  3. //3.采取递减的方式 i--
  4. var arr = ['red','green','blue','pink','purple'];
  5. var newArr = [];
  6. for (var i = arr.length -1; i >= 0; i--){
  7. newArr[newArr.length] = arr[i]
  8. }
  9. console.log(newArr);

案例2:冒泡排序法

  1. var arr = [5,4,3,2,1];
  2. for(var i = 0; i <= arr.length-1; i++){ //外层循环的趟数
  3. for(var j =0; j <= arr.length - i - 1; j++ ){ //内层循环表示 每一趟的交换次数
  4. if(arr[j] > arr [j+1]) {
  5. var temp = arr [j];
  6. arr[j] = arr[j+1];
  7. arr[j+1] = temp;
  8. }
  9. }
  10. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/613080
推荐阅读
相关标签
  

闽ICP备14008679号