首页 > 编程语言 >44.JavaScript基础【二】

44.JavaScript基础【二】

时间:2024-06-17 20:56:37浏览次数:22  
标签:元素 Infinity 44 JavaScript 基础 num 数组 var eg

【一】JavaScript之运算符

1)算术运算符

加法:+
减法:-
乘法:*
除法:/
优先运算:()
取余:%
  • 特殊NaN

    • NaN参与的运算结果全是NaN
  • 隐式转化

    • null转成0
    • undefined转成NaN

2)比较运算符

> 大于
< 小于
<= 小于等于
>= 大于等于
== 相等
!= 不相等
=== 全等 与相等区别在于会判断数据类型
!== 不全等
  • 特殊NaN

    • NaN与任何值都不相对,包括自己
  • infinity(+∞)

    • Infinity == Infinity 
      // true
      Infinity != Infinity 
      // false
      Infinity > Infinity 
      // false
      Infinity < Infinity 
      // false
      Infinity >= Infinity 
      // true
      Infinity <= Infinity 
      // true
      
  • null

    • null>=0 
      // true
      null<=0 
      // true
      null==undefined
      // true
      null==0 
      // false
      
  • 字符串

    • 字符串是比较字符的编码顺序,从前往后 0-9,a-z,A-Z

3)逻辑运算符

PY JS
and &&
or ||
not
  • 隐式转换
    • NaN、0、控制符、null、undefined为false

4)赋值运算符

= 等于
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取余等于
++ 递加
-- 递减

5)一元运算符

1.++a

  • 先增加,后赋值

    var a=5;
    // undefined
    var eg=++a;
    // undefined
    eg
    // 6
    a
    // 6
    

2.a++

  • 先赋值,后增加

    var a=5;
    // undefined
    var eg=a++;
    // undefined
    eg
    // 5
    a
    // 6
    

【二】JavaScript之流程控制

1)if判断

1.单分支

if(条件){
	代码块
};

2.双分支

if(条件){
    代码块
}else{
    代码块
};

3.多分支

if(条件){
    代码块
}else if(条件){
    代码块
}else{
    代码块
};

2)switch-case语法

  • 提前定义好可能出现的条件和解决方法
  • break
    • 断开当前条件
    • 若不加匹配成功后会依次执行后面的内容
  • default
    • 所有条件都不成立时执行
switch (传入内容){
    case 条件:
        代码块
        break;
    case 条件:
        代码块
        break;
    default
        上面都不走的时候会走的代码块
}

3)for循环

for (起始条件,结束条件,循环条件){条件成立执行的代码}
for (var a=0; a<3;a++) {
    console.log(a)
}
// 0
// 1
// 2
// undefined

4)while循环

while(条件){条件成立执行的代码}
var a=0;
while(a<3){
	console.log(a)
	a++
}
// 0
// 1
// 2

5)do-while循环

  • 最后循环语句
  • 最少执行一次
do{
    执行的代码
}while(条件);
var num=0;
do{
    console.log(num)
    num++
}while(num<3);
// 0
// 1
// 2

5)三元运算

条件 ? 正确的值 : 否定的值
1 > 2 ? "正确" : "错误";
// '错误'

【三】JavaScript之数组

1)介绍

  • 一组有序的数据集合,其内部可存放多个数据,不限制数据类型,长度可动态调整
  • 类似于Python的列表

2)创建数组

// 通过字面量
var eg=[]
// 通过数组对象
var eg=new Array()

3)索引取值

var eg=[1,2,3]
// undefined
eg[1]
// 2

4)获取数组长度

eg.length
// 3

5)数组常用的方法

var num=["a","b","c"]
var num_1=new Array();

1.遍历数组

  • forEach处理每个元素

    num.forEach((value,index)=>{
    	// value:当前列表索引对应的值
        console.log(`value:${value}`)
        // index:当前值对应的索引
    	console.log(`index:${index}`)
        let res=value+value
    })
    // value:a
    // index:0
    // value:b
    // index:1
    // value:c
    // index:2
    
  • for...of可读取元素并自动解包

    for(const item of num){
    	console.log(item)
    }
    // a
    // b
    // c
    

2.合并数组(concat)

a=[1,2]
b=["a","b"]
eg = a.concat(b);
// (4) [1, 2, 'a', 'b']

3.将数组转化成字符串(join)

  • 可指定转字符串时的拼接符号
eg=["ST1","ST2","ST3"]
eg_new=eg.join('|') 
// 'ST1|ST2|ST3'

4.删除(pop、shift)

  • pop:弹出数组最后一个元素
  • shift:弹出数组第一个元素

5.插入(unshift、push)

  • unshift:在数组开头插入元素
  • push:在数组末尾插入元素

6.翻转数组(reverse)

7.数组排序(sort)

  • 括号内需要自定义排序规则
num.sort((a,b)=>{
 return a-b
})
// ['a', 'b', 'c']

8.截取数组部分元素(slice)

num=['a','b','c','d']
new_num=num.slice(2,4)
// (2) ['c', 'd']

9.插入、删除或替换数组元素(splice)

num=['a','b','c','d']
new_num=num.splice(1,2,'x','y')
// (2) ['b', 'c']
num
// (4) ['a', 'x', 'y', 'd']

10.数组转字符串(toString)

eg=["ST1","ST2","ST3"]
eg_new=eg.toString();
// 'ST1,ST2,ST3'

11.获取数组原始值(valueOf)

12.查看指定元素在数组的位置(indexOf)

13.查看指定元素在数组中最后一次出现的位置(lastlndexOf)

14.反应函数映射数组元素(map)

15.根据条件筛选数组元素(filter)

16.判断数组所有元素是否满足条件(every)

17.判断数组元素是否有满足条件的(some)

18.按规则累积数组元素生成单个返回值(reduce)

eg = [1, 2, 3, 4, 5];
sum = eg.reduce((total, num) => total + num, 0)
// 15

19.按规则从末尾累积数组元素生成单个返回值(reduceRight)

  • 同reduce,单从末尾开始累积
  • 此方法不是ES6标准提供的,但可以通过扩展运算符实现类似效果
eg = [1, 2, 3, 4, 5];
reversedSum = arr.reduceRight((total, num) => total + num, 0)
// 15

20.统计长度(length)

标签:元素,Infinity,44,JavaScript,基础,num,数组,var,eg
From: https://www.cnblogs.com/Mist-/p/18253172

相关文章

  • 43.JavaScript基础【一】
    【一】JavaScript1)介绍也是一门编程语言,他可以写后端代码JS是由ECMAScript、DOM、BOM组成JS是运行在浏览器脚本的语言2)注释语法//单行注释/*多行注释多行注释*/3)js代码的书写位置head头里面的script标签中写在body体最下面直接常见一个js脚本文件,......
  • 47.JavaScript基础【五】
    【一】什么是jQuery1)概述是一个轻量的、兼容多浏览器的JavaScript的第三方库其内部封装了JS代码、能通过更少的代码操作DOM对象提高了代码效率、简化了代码量2)优势轻量级的JS框架丰富的DOM选择器链式表达式事件、样式、动画支持Ajax操作支持跨浏览器兼容插件扩展开......
  • 46.JavaScript基础【四】
    【一】弹出框是网页开发中常用的交互组件,用于显示警告、确认或提示,并于用户进行交互1)警告框用于向用户显示一条重要的警告信息通常包含一个确认按钮用于关闭alert("警告提示框")2)确认框用于向用户询问一个问题或确认某个操作通常包含一个确认按钮和一个取消......
  • 48.Bootstrap基础
    【一】引入该框架已经帮我们写好了很多页面样式,如果需要使用,只需要下载对应文件直接CV拷贝即可在使用Bootstrap的时候,所有的页面样式只需要通过修改class属性来调节即可【二】什么是BootstrapBootstrap是一个开源的前端框架,用于快速构建响应式和移动设备优先的网站或应用......
  • 代码随想录算法训练营第38天|● 理论基础 ● 509. 斐波那契数● 70. 爬楼梯 ● 746.
    动态规划理论基础动态规划,英文:DynamicProgramming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分于贪心,贪心没有状态推导,而是从局部直接选最优的,动态规划做题步骤确定dp数组(dptable)以及......
  • 系统地学习Lua编程语言,掌握其基础知识并应用于实际项目中;Lua编程语言中级开发的大纲,涵
    学习Lua编程语言的初级开发大纲可以帮助你系统性地掌握这门语言的基础知识。下面是一个详细的大纲,从基础语法到基本的编程概念,再到一些实用的库和工具。Lua初级开发大纲1.Lua简介Lua的历史与特点Lua的应用场景安装与配置Lua环境2.基础语法注释:单行注释和多行注释......
  • 跟我从零开始学C++(C++代码基础)
    引言小伙伴们是不是都等不及了,来啦来啦它来啦,在经历过前边那么多乱七八糟的但又重要的知识后,终于迎来了有关C++代码的这一步,真是不容易呀,小伙伴们,本章小雨会带着大家去从下载软件到一些简单的基础知识,放轻松~不过本章全程干货一点都不能错过呀,而且附带的Visualstudio的详......
  • 跟我从零开始学C++(C++代码基础)3
    引言小伙伴们大家好呀,又到了每日学习的时候了,今天小杨同学给大家带来了新的知识点哟,大家准备好了么,昨天学习的任务有没有消化好呢,昨天的课后练习怎么样了呢,有没有费了一番功夫弄出来呢。没有把基础打好的小伙伴们千万不要着急呀,毕竟根基不牢是要出大事情的,小伙伴们加油呀,跟......
  • HTML和CSS基础(二)
    四、HTML布局4.1文档流HTML文档流(DocumentFlow)是网页布局的基础,它决定了元素如何在页面上排列。文档流可以分为两大类:正常流(NormalFlow)和脱离正常流(OutOfFlow)。下面详细介绍这两大类以及它们的子分类:1.正常流(NormalFlow)正常流是文档流的默认布局方式,元素按照它们在H......
  • 【cv-python基础】不同数据集的解析
    前言数据集使用之前需要对标注文件进行解析,故此记录。代码实现1.APA数据集解析#20240612:parsejsonfiletolabeledimage.importargparseimportjsonimportosimportos.pathasospimportcv2ascvimportnumpyasnpjsonfilename="freespace_3Dbox_APA.j......