JavaScript的数据类型和运算符

JS的数据类型和运算符

1 JS的数据类型

1.1 数值类型

  • 数值类型统一为 number,不区分整数和浮点数

1.2 字符串类型

  • 字符串类型为 string 和JAVA中的String相似,JS中不严格区分单双引号,都可以用于表示字符串

1.3 布尔类型

  • 布尔类型为boolean 和Java中的boolean相似,但是在JS的if语句中,非空字符串会被转换为’真’,非零数字也会被认为是’真’

1.4 引用数据类型

  • 引用数据类型对象是Object类型, 各种对象和数组在JS中都是Object类型

1.5 function类型

  • JS中的各种函数属于function数据类型

1.6 变量名未赋值

  • js为弱类型语言,统一使用 var 声明对象和变量,在赋值时才确定真正的数据类型,变量如果只声明没有赋值的话,数据类型为undefined

1.7 赋予NULL值

  • 在JS中,如果给一个变量赋值为null,其数据类型是Object, 可以通过typeof关键字判断数据类型

2 JS的变量

2.1 JS中的变量具有特征

  • 1 弱类型变量,可以统一声明成var
  • 2 var声明的变量可以再次声明
  • 3 变量可以使用不同的数据类型多次赋值
  • 4 JS的语句可以以; 结尾,也可以不用;结尾
  • 5 变量标识符严格区分大小写
  • 6 标识符的命名规则参照JAVA
  • 7 如果使用了 一个没有声明的变量,那么运行时会报uncaught ReferenceError: is not defined at index.html:行号:列号
  • 8 如果一个变量只声明,没赋值,那么值是undefined

3 JS的运算符

3.1 算数运算符 + - * / %

  • 其中需要注意的是 / 和 %
    • / 在除0时,结果是Infinity ,而不是报错
    • %在模0时,结果是NaN,意思为 not a number ,而不是报错

3.2 复合算数运算符 ++ - - += -= *= /= %=

  • 符合算数运算符基本和JAVA一致,同样需要注意 /=和%=
    • 在/=0时,结果是Infinity ,而不是报错
    • 在%=0时,结果是NaN,意思为 not a number ,而不是报错

3.3 关系运算符 > < >= <= == === !=

  • 需要注意的是 == 和 === 差别
    • == 符号,如果两端的数据类型不一致,会尝试将两端的数据转换成number,再对比number大小
      • ‘123’ 这种字符串可以转换成数字
      • true会被转换成1 false会被转换成0
    • === 符号,如果两端数据类型不一致,直接返回false,数据类型一致在比较是否相同

3.4 逻辑运算符 || &&

  • 几乎和JAVA中的一样,需要注意的是,这里直接就是短路的逻辑运算符,单个的 | 和 & 以及 ^ 是位运算符

3.5 条件运算符 条件? 值1 : 值2

  • 几乎和JAVA中的一样

3.6 位运算符 | & ^ << >> >>>

  • 和 java中的类似(了解)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/12603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源可视化表单服务商:提升自主研发 助力流程化办公!

当前&#xff0c;做好流程化办公可以为企业实现提质增效的办公效果&#xff0c;助力企业进入数字化转型。作为开源可视化表单服务商&#xff0c;流辰信息坚持研发创新理念&#xff0c;努力提升自主研发能力&#xff0c;专为广大客户朋友提供集产品、框架定制、产品交付为一体的…

【WEEK12】 【DAY2】整合Druid数据源【中文版】

2024.5.14 Tuesday 目录 12.整合Druid数据源12.1.Druid简介12.2.配置数据源12.2.1.添加Druid数据源依赖12.2.2.切换数据源12.2.3.运行Springboot04DataApplicationTests.java12.2.4.尝试使用Druid数据源的专有配置12.2.5.导入Log4j 的依赖12.2.6.新建config文件夹12.2.7.修改测…

短视频人设定位有哪些:四川京之华锦信息技术公司

短视频人设定位有哪些&#xff1a;打造独特魅力的关键 随着短视频平台的兴起&#xff0c;越来越多的内容创作者开始涌现&#xff0c;他们凭借各自独特的魅力在网络世界中崭露头角。而在这其中&#xff0c;一个成功的短视频账号背后&#xff0c;往往有一个清晰、鲜明的人设定位…

安卓APP+TCP+服务器端

1、在.xml文件中添加权限 <uses-permission android:name"android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name"android.permission.INTERNET"/>2、修改显示界面 <?xml version"1.0" encoding"utf-8&…

短剧私域-快速引流变现

短剧的爆火&#xff0c;衍生出了很多周边项目。 比如免费看剧App&#xff0c;短剧搜索机器人&#xff0c;短剧付费圈子等等。 这些项目的本质&#xff0c;就是借助短剧的热度&#xff0c;把流量引到自己的鱼塘进行变现。 短剧机器人大家都知道&#xff0c;目前最火的一种玩法…

【大数据面试题】27 讲下Doris的物化视图

一步一个脚印&#xff0c;一天一道面试题。 物化视图概念 物化视图&#xff0c;顾名思义&#xff0c;是将一个查询的结果预先计算并存储为物理表的形式。这意味着&#xff0c;原本需要在运行时动态执行的复杂查询&#xff0c;现在变成了直接从已经计算好的结果表中读取数据&a…

vue一个简易时钟

<template><div class"">时间{{ time }}<div class"base1"><div class"move-to-center line"></div><div class"move-to-center line line2"></div><div class"move-to-center lin…

单链表经典算法OJ题--牛客(环形链表的约瑟夫问题

链接&#xff1a;环形链表的约瑟夫问题_牛客题霸_牛客网【点击即可跳转】 著名的Josephus问题 据说著名犹太历史学家 Josephus有过以下的故事&#xff1a; 在罗马人占领乔塔帕特后&#xff0c;39 个犹太⼈与 Josephus及他的朋友躲到⼀个洞中&#xff0c;39个犹太⼈决定宁愿死也…

部标JT809开源(go版本)

GitHub - Yordroid/jt809_server: 部标809下级平台&#xff0c;支持2011&#xff0c;2013,2019 欢迎大家给波星

网络接口类型

第二天&#xff08;网络、接口类型&#xff09; 网络类型&#xff1a; 1、点到点&#xff1a;在一个网段内只能存在&#xff0c;两个物理节点 MA --- 多路访问 -- 在一个网段内物理节点的数量不限制 MA --- BMA NBMA 2、BMA --- 广播型多路访问 3、NBMA --- 非广播型多路…

智能鱼缸-设计说明书

设计摘要&#xff1a; 本论文以STC89C52单片机为核心控制器&#xff0c;构建了一套智能鱼缸系统。该系统由中控部分、输入部分和输出部分组成。中控部分采用STC89C52单片机&#xff0c;负责获取输入部分数据并进行处理&#xff0c;控制输出部分。输入部分包括TDS水质水温检测模…

MySQL:查询一个由逗号分隔的字符串数组,并检查其中指定元素是否等于某个值

使用SUBSTRING_INDEX函数 SELECT * FROM TABLE_NAME WHERE SUBSTRING_INDEX(SUBSTRING_INDEX(status, ,, 2), ,, -1) 1SUBSTRING_INDEX()函数 用于提取字符串中的子字符串。函数有三个参数&#xff1a; 第一个参数是源字符串&#xff0c;这是您要从中提取子字符串的字符串。…

Axure RP移动端交互元件库/交互原型模板

作品类型&#xff1a;元件库/原型模板 更新日期&#xff1a;2023-12-04 当前版本&#xff1a;V1.3 适用范围&#xff1a;App应用/小程序 Axure版本&#xff1a;Axure 9.0均可打开 文件大小&#xff1a;36.7M 历时两个月制作并整理了手机移动端常用的75种组件、90个常用界面模板…

Hadoop复习(上)

目录 一 绪论 1 大数据5v特点 --1.6 2 Google三驾马车 GFS MapReduce BigTable --1.18 3 Hadoop的特点 --1.23 4 Hadoop生态系统 (教材p6) 6 NoSQL有哪些 二 HDFS架构 1 三大基本组件 --2.1.2 2 HDFS特性和局限性(教材p38) --2.1.4-5 3 HDFS block 4 HDFS守护进程 …

设计模式六大原则之 接口分离原则

文章目录 概念比较代码示例优势 小结 概念 要为各个类建立它们需要的专用接口&#xff0c;而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。 比较 概念有了&#xff0c;再来看看比较下吧&#xff0c;和单一职责比较比较。 接口隔离原则和单一职责都是为了提高类的…

pyenv 之 python 多版本管理(win11)

1. 背景 常常会用到Python的多个版本&#xff0c;因此可以使用Pyenv来对Python版本进行管理。 2. win11下载 pyenv 在终端执行下载语句&#xff1a; pip install pyenv-win --target D:\software\pyenv 其中 D:\software\pyenv 为你想要下载到的文件目录&#xff0c;建议在 …

数字功放-改善液晶显示屏音频性能,重塑音频体验

随着液晶电视、液晶显示器以及等离子电视屏幕的尺寸不断增大&#xff0c;音频性能要求相应提高&#xff1b;数字功放芯片作为音频解决方案&#xff1b;不仅为音频设备带来更高的效率和更低的功耗&#xff0c;同时在显示屏上进一步提高了平板显示器的音质&#xff0c;使之具有了…

常用正则 JS 持续更新

应用版本号正则验证 正则判断版本号&#xff08;如&#xff1a;1.2.3 或 1.2.3.4&#xff09;&#xff0c;不允许出现 0.x.x&#xff1b;01.x.x; x.0x.x; x.00.x&#xff1b; x.x.00; x.x.0x/ ^ ([ 1-9 ] \d | [ 1-9 ])( . ([ 1-9 ] \d | \d )) {2,3} $ /0-10 保留一位小数的数…

Git系列:git add 被忽视的操作技巧

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

[Linux]一篇文章带你全面理解信号

文章目录 初识信号一、什么是信号二、为什么要有信号 看见信号一、先见一下Linux中的信号&#xff1a;二、如何产生信号三、自定义信号的处理行为&#xff08;自定义捕捉&#xff09; 了解信号一、信号的保存二、block、pending表使用代码查看三、一些倔强的&#xff0c;无法被…