首页 > 其他分享 >js

js

时间:2024-06-07 16:44:50浏览次数:30  
标签:arr js 运算符 item num 字符串 var

特点

  1. 不完善
  2. 有很多默认遵守的规则

语法

  1. 注释:

    //空*        #单行注释
    /*  */       #多行注释  
    
  2. 书写位置

    1.
    <head>
        <script>第一种位置</script>
    </head>
    
    <body>
    
    
    2.
    第二种位置body底部
    </body>
    
    
    3.直接写一个js脚本,引入
    <script src=''>第三种方式</script>
    
    4.在浏览器控制台书写
    
  3. 规范

    ;  结束符
    代码报错了,页面依然正常显示
    
    
  4. 变量

    1. 定义方法
    var name=""
    
    let name=""     #es6新语法,作用域比var小
    
    const NAME=""    #常量定义,不允许修改
    
  5. 数据类型:

    1. 类型

      1. Number=int+float

        1. 类型转换:parseInt var/parseFloat(var)
      2. string

        多行字符
        var a=`as
        bd
        dc
        ed
        cd`
        
        格式化字符串
        
        var b= `my name is ${a}`
        
        拼接字符串
        var c=a+b
        
        常用方法
        .length
        .trim()
        .trimLeft()
        .trimRight()
        .indexof("")  #字符的索引
        .charAt(n)   #索引为n的字符
        .substring(a,b) #切片 索引a到b,不能用负索引?
        .toLowerCase()  #转小写
        .toUpperCase()   #转大写
        .split('a',n)      #用a切分出2个元素
        .concat(a,b,c)    #与a,b,c拼一起
        .toString()         #强制类型转换为字符串
        
      3. undefined 和null

        1. null 空,指定清空变量时用
        2. undefined 声明了一个变量但是没有做初始化
      4. bollean=true/false

        1. true:others
        2. false:空字符串、0、null、undefined、NaN
        3. 类型转换:Boolean(var)
      5. object

    2. 方法:

      1. typeof(var) 查看类型
      2. parseInt(var) /parseFloat(var)字符串转number
      3. NaN = not a number
  6. 运算符

    1. 算数运算符

      1. +/ -*/()% #加减乘除,优先运算,取余
      2. 任何有NaN参加的运算结果都是NaN
      3. null 运算中转为0,undefined转为NaN
    2. 比较运算符

      >
      <
      <=
      >=
      ==    #相等
      !=
      ===   #全等,判断数据类型
      !==   #不全等
      
      Infinity   #无穷大
      
      字符串比较按照ASCII码顺序
      
      比较顺序:从前往后
      
    3. 逻辑运算符

      &&    #与
      ||    #或
      !     #非
      
    4. 赋值运算符

      =
      +=
      -=
      *=
      /=
      %=
      ++      #递增
      --      #递减
      
    5. 一元运算符

      var a=10
      var res1= ++a    #res1=12??
      var res2 =a++    #res2=11
      
      var res1= --a    #res1=8??
      var res2 =a--   #res2=9
      
    6. 运算优先级()>一元>算数>比较>逻辑>赋值

  7. 流程控制

    1. if判断

      if (条件){结果}else if(条件){结果}else{结果}
      
    2. switch-case

      switch (num){case0:***;break;
      case1:***;break;
      case2:***;break;
      default:***
      }  #num用来选择case;如果没有break,case1执行完了就会依次往下
      
    3. for

      for (let i=0;i<10;i++){console.log(i)}
      #打印0-9
      
    4. while

      while (i<100){console.log(i)}
      
    5. do while :后侧循环,最少执行一次

      do{console.log(i)}while(i<100)
      
    6. 三元运算符

      var res=1>2?4:6   #?前为条件,  :前后为条件成立或不成立的值(如果1>2则res=4,否则res=6)
      
  8. 数组

    1. 定义

      var arr=[]
      var arr=new Array()
      
    2. 方法

      arr.length
      
      arr.forEach((item,index)=>{console.log(`${index}:${item}`)})#打印索引:值
      
      arr.forEach(function (item,index)  {
        console.log(`Element at index ${index}: ${item}`);
      });
      
      for (const item of arr){console.log(item)}
      
      
      arr.concat(arr2)    #arr本身不变,生成第三个
      
      arr.join(',')     #用,将arr数组中的元素链接为字符串
      
      arr.pop()      #删除arr的最后一个元素,返回值是删除的那个元素
      
      arr.shift()     #删除arr的第一个元素,返回值是删除的那个元素
      
      arr.unshift('a')  #在arr数组开头插入字符a
      
      arr.push('a')    #在arr数组结尾插入字符a
      
      arr.reverse()    #翻转数组
      
      arr.sort()    #排序
      
      arr.slice(s,e)  #截取s到e子数组
      
      arr.splice(a,c,'c',...)#从下标a开始删除c个元素,插入字符c...
      
      arr.toString()
      
      arr.valueof()
      
      arr.indexof('a') 
      
      arr.lastIndexOf('a')
      
      arr.map(a=>a*a)
      
      arr.filter(a=>a%2===0)
      
      arr.every(a=>a)??   #all
      
      arr.some(a=>a)      #any
      
      arr.reduce((total,num)=>total+num,0)??
      
      arr.rightReduce((total,num)=>total+num,0)??
      
      
      
  9. 函数对象

    1. console.log(var) #打印 print

    2. alert() #弹框显示

    3. prompt(var) #输入框 input

    4. 定义:参数传多传少一样执行,不报错

      fuction fun(a,b){...return...}
      
    5. 参数

    6. 匿名函数

    7. 递归

    8. 作用域

    9. 箭头函数

  10. 内置方法

  11. 对象

    1. 对象字面量:var obj={}
    2. var obj= new object()

标签:arr,js,运算符,item,num,字符串,var
From: https://www.cnblogs.com/zenopan101861/p/18237454

相关文章

  • web开发者必备:用nvm-windows优雅地使用多个版本的Node.js 附下载链接
    一、为什么要安装多个版本的node.js现在开发前端项目,有的需要node.js版本是18以上的,或者其他版本,然而电脑上安装的是v16,直接升级到18,又怕影响老项目,最好的办法就是安装多个版本,需要哪个切换一下就行。网上有一些安装多个版本node.js的做法,很麻烦。推荐nvm这个工具,很方便。nvm全......
  • vue+cesium+heatmap.js 实现热力图
    效果如下图:1.安装heatmap.jsnpmi heatmap.js官网:heatmap.js:DynamicHeatmapsfortheWeb(patrick-wied.at)2.把这两个文件放到项目里heatmap.jsimportutilfrom"./util"importh337from'heatmap.js'/***@description二维热力图类,基于h337类扩展*@......
  • 学习前端3DThreejs一篇就够了,从入门到实战
    vue安装three.jsnpminstall--savethree引入three.jsimport*asTHREEfrom'three'three.js结构### three.js坐标创建一个场景scene场景,camera相机,renderer渲染器创建一个场景this.scene=newTHREE.Scene()创建一个透视摄像机this.camera=newTHR......
  • HTML5+CSS3+JS小实例:网格图库
    实例:网格图库技术栈:HTML+CSS+JS效果:源码:【HTML】<!DOCTYPEhtml><htmllang="zh-CN"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0">......
  • 【JS封装-数组操作】强化编程实践:精选JavaScript函数封装集锦-关于数组操作(数组去重、
    目录数组去重数组快速排序过滤数组映射数组数组扁平化数组求和数组最大值数组最小值数组切片数组乱序(洗牌算法)数组去重/***去除数组中的重复项。*@param{Array}array要去重的数组。*@returns{Array}去重后的数组。*/functionuniqueArray(array......
  • Three.js入门指南:从基础到实践的三维渲染之旅
    threejs相关资料threejs官网threejs案例安装(Installation)使用NPM和构建工具进行安装对于大多数用户而已,从npm包注册表中心安装并使用构建工具会是一个更推荐的方案。因为项目需要的依赖越多,就越有可能遇到静态托管无法轻易解决的问题。而使用构建工具,导入本地J......
  • 前端 JS 经典:阿里云文件上传思路
    前言:功能点概括:1、多选文件2、选择文件夹3、拖拽4、选择后形成一个列表,列表里有一些信息5、有进度条6、控制并发数7、可取消8、展示统计信息1.交互实现交互的目标是要拿到file对象。只要拿到file对象,就能通过网络上传。1.1如何选择多文件给input添加multip......
  • 微前端学习笔记(5):从import-html-entry发微DOM/JS/CSS隔离
    import-html-entry 是qiankun中一个举足轻重的依赖,用于获取子应用的HTML和JS,同时对HTML和JS进行了各自的处理,以便于子应用在父应用中加载。 import-html-entry主要是实现了以下几个能力拉取url对应的html并且对html进行了一系列的处理拉取上述html中所......
  • 记录工作中常用的 JS 数组相关操作
    工作中难免会遇到各种各样的数据结构,较为全面的了解数组操作,对于复杂数据结构的处理会非常有用且节省时间所以想在这里总结一下工作中常用的数组操作,都是一些非常基础的知识,大家看个乐就好~目录工作中常用的数组方法常见数组方法中的用法、以及坑slice()和splice()方法......
  • js中try中定义的数据catch无法访问
    如果你在try块中定义了一个变量,但在catch块中访问时得到undefined,这可能是因为以下几个原因:变量作用域问题:如果在try块中使用let或const声明了变量,这些变量只在try块内部可见(即具有块级作用域)。当控制权转移到catch块时,这些变量就不可见了,因此尝试访问它们会得到undefined。但根......