02—js数据类型及相互转换

一、数据类型

js把数据分为两类

基本类型:string number boolean undefined null

引用类型:object(fuction(可以执行)  array(数值下标,内部数据是有序的))

1.Number:数值类型,整数和小数

(js的浮点数的运算能力很差,所以不建议使用js做浮点数的运算)

  • Js中整数和小数统称为number类型

            Var  a=120;

           Var  b=0.120;

  • js中的数值最大值和最小值

           Console.log(Number.MAX_VALUE);//1.7976931348623157e+308

            Console.log(Number.MIN_VALUE);//5e-324

  • 数字型三个特殊值
  • Infinity  代表无穷大,大于任何数值
  • -Infinity  代表无穷小,小于任何数值
  • NaN  Not a Number,代表一个非数值

  • isNaN()

用来判断一个变量是否为非数值类型,返回true/false

2.String:字符串类型,只要是引号括起来的都是字符串类型

  • 字符串引号嵌套

Js使用引号规则:外双内单,外单内双

Var strMsg=’我是”sun”我在欣知大数据’

  • 字符串转义字符     
  • 字符串长度

字符串是由若干个字符组成的,这些字符数量就是字符串的长度。

通过字符串的length属性可以获取字符串长度

Var  strMsg=”我是帅气多金的程序猿!!!”

Alert(strMsg.length);//13

  • 字符串拼接

多个字符串之间可以使用+进行拼接,拼接方式为 字符串+任意类型=新的字符串

拼接前会把字符串相加的任何类型转为字符串,在拼接起来

//1.字符串相加

Console.log(“hello”+” ”+”world”);//hello world

//2.数值字符串相加

Console.log(“12”+” ”+”12”);//1212

//3.数值字符串+数值

Console.log(“12”+” ”+12);//1212

3.Boolean:布尔类型 只有两个值 false/true

4.Undefined:空变量,表示变量没有值

什么是未声明和未定义的变量?面试

未声明的变量是程序中不存在且未声明的变量。

如果程序尝试读取未声明变量的值,则会遇到运行时错误。

未定义的变量是在程序中声明但尚未给出任何值的变量。

如果程序尝试读取未定义变量的值,则返回未定义的值。

5.Null空对象指针,是一个只有一个值的数据类型(可以将变量设置为null 来清空变量)

6.Object:对象,由花括号分割,对象的属性以名称和值对的形式定义(name:value)来定义

、获取变量数据类型

typeof:可以使用typeof(变量名)查询数据类型

、数据类型的相互转化

1.转换为字符串类型

2.转换为数值型(重点)

3.转化为布尔值

Undefine和null是不能转化成String类型的

Undefine(NaN)和null(0)、true(1)、false(0)可转化成number类型

四、运算符

1、算术运算符

  1. ·加减乘除:+ - * /
  2. ·取模运算符:%
  3. ·正负运算符:+ -
  4. ·递增递减运算符:++ --:使数字递增/递减1(注意前置和后置的区别)

o若没有赋值前置和后置,同。

o若有赋值:前置则先计算递增/减后赋值,后置则相反。

2、用于字符串的 +

  1. + 运算符用于把文本值或字符串变量加起来(连接起来)。
  2. 要想在两个字符串之间增加空格,需要把空格插入一个字符串之中:
  3. 如果把数字与字符串相加,结果将成为字符串。

  1. 除了加法字符串和数值相减,相除,求余:
  2. 当字符串是纯数字,计算机会将字符串转为数值型进行减法计算
  3. 当字符串不是纯数字或者无数值,则返回的值是NAN

3、赋值运算符

赋值运算符用于给 JavaScript 变量赋值。

  1. ·=: x=y
  2. ·+=:x+=y 等价于 x=x+y
  3. ·-=:x-=y 等价于 x=x-y
  4. ·*=:x*=y 等价于 x=x*y
  5. ·/=: x/=y 等价于 x=x/y
  6. ·%=: x%=y 等价于 x=x%y

4、比较运算符

·相等运算符 == :判断两个操作数是否相等。不同的数据类型会自动转换为相等的数据类型再做比较。

·等同运算符=== :全等(值和类型),严格意义的相等,两个操作数的值和他们的类型必须完全一致。

·不等于:!=

·不等同运算符: !==

·大于:>

·小于:<

·大于或等于:>=

·小于或等于:<=

//比较运算符也叫做关系运算符 >、<、>=、<=、==(相等)、!=(不等)、===(全等)、!==(不全等)

//比较运算符是比较两个数的大小的运算符,返回的是一个布尔值。

//>、<、>=、<=、==、!=、只比较值不比较类型

//===、!==、即比较值又比较类型

//若一个是数值字符串,一个是数值,字符串会自动转换成数值进行比较。

//若两个都是字符串,则比较首个数字的大小。

//字母字符串会转换成对应的ASCII码(较少用到,不做讲解,知道即可)

//布尔值的false和true会转换成0和1

5、逻辑运算符

·逻辑运算符用于测定变量或值之间的逻辑。

  1. ·&& and(与)
  2. ·|| or(或)
  3. ·! not(非)

6、三元运算/三目运算/三元表达式/条件运算符

·根据条件在两个语句中执行其中的一个,使用符号 ?:语法如下:

条件表达式?语句1:语句2

7、运算符优先级

运算符优先级描述了在计算表达式时执行运算的顺序。先执行具有较高优先级的运算,然后执行较低优先级的运算。

例如,先执行相乘,再执行相加。

  1. ·运算符比较多,可以合理使用()来改变表达式的优先级。
  2. ·()的用法和数学中的()用法相同,()内的会优先计算。

练习4:

输入框中输入一个数,与18比较,大于18则在页面显示成年小于则显示未成年

参数说明:

条件表达式,结果会被作为布尔值处理

语句1:如果条件表达式返回true则执行

语句2:如果条件表达式返回false则执行

Var a=prompt(‘请输入年龄’);

Var b=prompt(‘请输入年薪,单位万’);

Var c=a>20 ? ‘可以娶老婆’:‘不可以娶老婆’;

Var d=a>20 && b>30 ? ‘可以娶老婆’:‘不可以娶老婆’;

Document.write(d);

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringMVC原理及工作流程

组件 SpringMVC的原理主要基于它的各个组件之间的相互协作交互&#xff0c;从而实现了Web请求的接收&#xff0c;处理和响应。 它的组件有如下几个&#xff1a; DispatcherServlet前端控制器 HandlerMapping处理器映射器 Controller处理器 ModelAndView ViewResolver视图…

Mysql内存表及使用场景(12/16)

内存表&#xff08;Memory引擎&#xff09; InnoDB引擎使用B树作为主键索引&#xff0c;数据按照索引顺序存储&#xff0c;称为索引组织表&#xff08;Index Organized Table&#xff09;。 Memory引擎的数据和索引分开存储&#xff0c;数据以数组形式存放&#xff0c;主键索…

前端CSS讲义1

什么是 CSS? CSS 指层叠样式表 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中&#xff0c;是为了解决内容与表现分离的问题 外部样式表可以极大提高工作效率 外部样式表通常存储在 CSS 文件中 多个样式定义可层叠为一 样式对网页中元素…

DAY03|203.移除链表元素、707.设计链表、206.反转链表

203.移除链表元素、707.设计链表、206.反转链表 LeetCode 203.移除链表元素LeetCode 707.设计链表LeetCode 206.反转链表双指针法递归法 LeetCode 203.移除链表元素 注意&#xff0c;在dummy上操作&#xff0c;返回也返回dummy->next 如果头铁想返回head&#xff0c;那样会…

2024高交会-2024深圳高新技术展-高新技术成果交易会

2024高交会-2024深圳高新技术展-2024高新技术成果展-中国高校技术交易会-第26届高交会-深圳高交会-深圳高科技展-深圳新科技展-深圳高新技术成果展 第二十六届中国国际高新技术成果交易会&#xff08;简称高交会&#xff09; 时间&#xff1a;2024年11月15日-19日 地址&#…

点击按钮(文字)调起elementUI大图预览

时隔一年&#xff0c;我又回来了 ~ 最近在做后台&#xff0c;遇到一个需求&#xff0c;就是点击“查看详情”按钮&#xff0c;调起elementUI的大图预览功能&#xff0c;预览多张图片&#xff0c;如下图&#xff1a; 首先想到的是使用element-ui的el-image组件&#xff0c;但它是…

NzN的数据结构--交换排序

篇接上文&#xff0c;今天要学习的就是交换排序&#xff0c;这么励志的日更博主&#xff0c;你怎么能不三连一下呢&#xff1f; 目录 一、基本思想 二、冒泡排序 三、快速排序 1. hoare版本 2. 挖坑法 3. 前后指针法 4. hoare版本优化 5. 非递归实现快速排序 一、基本…

模拟移动端美团案例(react版)

文章目录 目录 概述 项目搭建 1.启动项目&#xff08;mock服务前端服务&#xff09; 2.使用Redux ToolTik(RTK)编写store(异步action) 3.组件触发action并渲染数据 一、渲染列表 ​编辑 二、tab切换类交互 三、添加购物车 四、统计区域功能实现 五、购物车列表功能实现 六、控制…

【Java集合进阶】泛型的通配符和综合练习

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收藏 …

加速度JUSDO | 电子元器件商城行业调研及运营方案

一、行业背景与竞品分析 随着电子元器件行业的快速发展&#xff0c;线上元器件商城已成为行业交易的重要渠道。目前市场上存在多个知名的元器件商城&#xff0c;如立创、云汉芯城、贸泽商城等&#xff0c;它们都提供了丰富的元器件产品和便捷的线上交易服务。 立创商城&#x…

蓝桥杯第十三届c++大学B组详解

目录 1.九进制转十进制 2.顺子日期 3.刷题统计 4.修剪灌木 5.x进制的减法 6.统计子矩阵 7.积木画 8.扫雷 9.李白打酒 10.砍竹子 1.九进制转换十进制 题目解析&#xff1a;就是将2022的每一位拿出来乘以9的n-1次方的和就是最终答案。次方是从0开始的到n-1. #include &…

蓝桥杯物联网竞赛_STM32L071_16_EEPROM

仍然是没有考过的知识点 朴素的讲就是板子中一块不会因为断电重启而导致数值初始化的一片地址 要注意的是有时候容易把板子什么写错导致板子什么地址写坏了导致程序无法烧录&#xff0c;这个时候记得一直按flash键烧录&#xff0c;烧录时会报错&#xff0c;点击确定&#xff0…

什么是MOV视频格式?如何把MP4视频转MOV视频格式?

一&#xff0c;前言 当然可以&#xff0c;MP4视频可以转换为MOV格式。这两种格式都是常见的视频文件格式&#xff0c;它们都可以用于存储和播放视频内容。虽然它们的编码方式和特性有所不同&#xff0c;但使用合适的视频转换工具可以轻松地将MP4视频转换为MOV格式。 二&#…

【洛谷 P8804】[蓝桥杯 2022 国 B] 故障 题解(概率论+条件概率+贝叶斯公式)

[蓝桥杯 2022 国 B] 故障 题目描述 在软件或系统开发中&#xff0c;我们会遇到各种各样的故障。为了从故障现象反推故障原因&#xff0c;工程师们会总结一种叫做相关性矩阵的二维表格&#xff0c;来表示故障原因与故障现象之间的关系。比如: 其中每行表示一种故障原因&#x…

bugku-web-你从哪里来

这里就这一句话提示&#xff0c;问我是不是谷歌的&#xff1f; 用谷歌浏览器访问 没看见什么变化 抓包查看 没有变化 这时我想到爬虫中的反爬策略中有一种&#xff0c;判断请求的当前界面来判断用户的起始判断位置 这时抓取报文 GET / HTTP/1.1 Host: 114.67.175.224:1516…

Ollama教程——兼容OpenAI API:高效利用兼容OpenAI的API进行AI项目开发

相关文章: Ollama教程——入门&#xff1a;开启本地大型语言模型开发之旅 Ollama教程——模型&#xff1a;如何将模型高效导入到ollama框架 Ollama教程——兼容OpenAI API&#xff1a;高效利用兼容OpenAI的API进行AI项目开发 Ollama教程——兼容OpenAI API&#xff1a;高效利用…

阿里云服务器项目部署docker-compose+vue+redis+nginx+minio+springboot

1 阿里云服务器项目部署-单机部署 docker-compose 1.1 搭建背景 服务器 阿里云服务器 前端 vue 后端 springboot 服务 redis 、nginx、minio 都做单机模式部署,不做集群部署 博客内容参考了其他博文&#xff0c;会贴出来 1.2 <重要>端口开放前提说明 任何开放的端…

(3)(3.1) 英特尔Realsense深度摄像头(三)

文章目录 前言 10 系统概述 11 手动设置配套计算机 前言 本文介绍如何将英特尔 Realsense 深度摄像头(Intel Realsense Depth Camera)与 ArduPilot 配合使用&#xff0c;以实现避障(obstacle avoidance)。该方法使用在配套计算机上运行的 Python 脚本&#xff08;非 ROS&am…

【算法】模拟

个人主页 &#xff1a; zxctscl 如有转载请先通知 题目 前言1. 1576. 替换所有的问号1.1 分析1.2 代码 2. 495. 提莫攻击2.1 分析2.2 代码 3. 6. Z 字形变换3.1 分析3.2 代码 4. 38. 外观数列4.1 分析4.2 代码 5. 1419. 数青蛙5.1 分析5.2 代码 前言 模拟算法就是根据题目所给…

怎么开发一个预约小程序_一键预约新体验

预约小程序&#xff0c;让生活更便捷——轻松掌握未来&#xff0c;一键预约新体验 在快节奏的现代生活中&#xff0c;我们总是在不断地奔波&#xff0c;为了工作、为了生活&#xff0c;不停地忙碌着。然而&#xff0c;在这繁忙的生活中&#xff0c;我们是否曾想过如何更加高效…