web前端-javascript-运算符(介绍说明,算术运算符、+、-、*、/、%,隐式类型转换、转换为String、转换为Number)

news2024/11/16 19:29:42

文章目录

  • 运算符
    • 1. 操作符说明
      • 1.1. 通过运算符可以对一个或多个值进行运算,并获取运算结果
      • 1.2. 它会将该值的类型以字符串的形式返回
    • 2. 算数运算符
      • 2.1. 当对非 Number 的值进行运算时,会将这些值转换为 Number 然后再运算
      • 2.2. +
      • 2.3 -
      • 2.4 \*
      • 2.5 /
      • 2.6 %
    • 3. 隐式类型转换
      • 3.1 转换为 String
      • 3.2 转换为 Number

运算符

var a = 123;

var result = typeof a;

console.log(typeof result, "result = " + result);

result = a + 1;
console.log(typeof result, "result = " + result);

result = 456 + 789;
console.log("result = " + result);

result = true + 1;
console.log(typeof result, "result = " + result);

result = true + false;
console.log(typeof result, "result = " + result);

result = 2 + null;
console.log(typeof result, "result = " + result);

result = 2 + NaN;
console.log(typeof result, "result = " + result);

result = "你好" + "大帅哥";
console.log(typeof result, "result = " + result);

var str = "锄禾日当午," + 
"汗滴禾下土," + 
"谁知盘中餐," + 
"粒粒皆辛苦";
console.log("result = " + result);

result = 123 + "1";
console.log(typeof result, "result = " + result);

result = true + "hello";
console.log(typeof result, "result = " + result);

var c = 123;
c = c + "";
console.log(typeof result, "result = " + result);

result = 1 + 2 + "3"; // 33
console.log(typeof result, "result = " + result);

result = "1" + 2 + 3; // 123
console.log(typeof result, "result = " + result);

result = 100 - 5;
console.log("result = " + result);

result = 100 - true;
console.log(typeof result, "result = " + result);

result = 100 - "1";
console.log(typeof result, "result = " + result);

result = 2 * 2;
console.log(typeof result, "result = " + result);

result = 2 * "8";
console.log(typeof result, "result = " + result);

result = 2 * undefined;
console.log(typeof result, "result = " + result);

result = 2 * null;
console.log(typeof result, "result = " + result);

result = 4 / 2;
console.log(typeof result, "result = " + result);

result = 3 / 2;
console.log(typeof result, "result = " + result);

var d = "123";
d = d - 0;
console.log(typeof result, "result = " + result);

result = 9 % 3;
result = 9 % 4;
result = 9 % 5;

console.log("result = " + result);

请添加图片描述

1. 操作符说明

运算符也叫操作符

1.1. 通过运算符可以对一个或多个值进行运算,并获取运算结果

比如:typeof 就是运算符,可以用来获得一个值的类型

1.2. 它会将该值的类型以字符串的形式返回

number string boolean undefined object

var a = 123;

var result = typeof a;

console.log(typeof result);

2. 算数运算符

2.1. 当对非 Number 的值进行运算时,会将这些值转换为 Number 然后再运算

任何值和 NaN 做运算都得 NaN

var result = 2 + NaN;
console.log(typeof result, "result = " + result);

2.2. +

  1. +可以对两个值进行加法运算,并将结果返回
  2. 如果对两个字符串进行加法运算,则会做拼串
    • 会将两个字符串拼接为一个字符串,并返回
  3. 任何的值和字符串做加法运算,都会先转换为字符串,然后再和字符串做拼串的操作
var result = a + 1;
console.log(typeof result, "result = " + result);

result = 456 + 789;
console.log("result = " + result);

result = true + 1;
console.log(typeof result, "result = " + result);

result = true + false;
console.log(typeof result, "result = " + result);

result = 2 + null;
console.log(typeof result, "result = " + result);

result = 2 + NaN;
console.log(typeof result, "result = " + result);

result = "你好" + "大帅哥";
console.log(typeof result, "result = " + result);

var str = "锄禾日当午," + "汗滴禾下土," + "谁知盘中餐," + "粒粒皆辛苦";
console.log("result = " + result);

result = 123 + "1";
console.log(typeof result, "result = " + result);

result = true + "hello";
console.log(typeof result, "result = " + result);

var c = 123;
c = c + "";
console.log(typeof c, "c = " + c);

result = 1 + 2 + "3"; // 33
console.log(typeof result, "result = " + result);

result = "1" + 2 + 3; // 123
console.log(typeof result, "result = " + result);

2.3 -

可以对两个值进行减法运算,并将结果返回

var result = 100 - 5;
console.log("result = " + result);

result = 100 - true;
console.log(typeof result, "result = " + result);

result = 100 - "1";
console.log(typeof result, "result = " + result);

2.4 *

可以对两个值进行乘法运算

var result = 2 * 2;
console.log("result = " + result);

result = 2 * "8";
console.log(typeof result, "result = " + result);

result = 2 * undefined;
console.log(typeof result, "result = " + result);

result = 2 * null;
console.log(typeof result, "result = " + result);

2.5 /

可以对两个值进行除法运算

var result = 4 / 2;
console.log("result = " + result);

result = 3 / 2;
console.log("result = " + result);

2.6 %

% 取模运算(取余数)

var result = 9 % 3;
console.log("result = " + result);

result = 9 % 4;
console.log("result = " + result);

result = 9 % 5;
console.log(typeof result, "result = " + result);

3. 隐式类型转换

3.1 转换为 String

任何值和字符串相加都会转换为字符串,并做拼串操作

  1. 我们可以利用这一特点,来将一个任意的数据类型转换 String
    • 我们只需要为任意的数据类型 + 一个"" 即可将其转换为 String
    • 这是一种隐式的类型转换,由浏览器自动完成,实际上它也是调用的 String()函数
var c = 123;
c = c + "";
console.log(typeof c, "c = " + c);

c = null;
c = c + "";
console.log(typeof c, "c = " + c);

c = 1 + 2 + "3"; // 33
console.log(typeof c, "c = " + c);

c = "1" + 2 + 3; // 123
console.log(typeof c, "c = " + c);

3.2 转换为 Number

  1. 任何值做- * / 运算时斗湖以自动转换为 Number
    • 我们可以利用这一特点做隐式的类型转换
  2. 可以通过一个值 -0 *1 /1 来将其转换为 Number
    • 原理和 Number()一样,使用起来更加简单
var d = "123";

d = d - 0;
console.log(typeof d, "d = " + d);

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

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

相关文章

思科配置VLAN间单臂路由

思科配置VLAN间单臂路由 为什么要配置单臂路由 路由器上链接不同的VLAN的物理接口数量有限,随着VLAN增加端口很快就被耗尽,然而VLAN中继允许单个路由器物理接口接多个VLAN的流量,即有了单臂路由技术。 示例拓扑 本文以下图所示拓扑为例配…

mac误删除文件恢复,mac文件丢失如何找回

mac误删除文件恢复?相信不少朋友一开始遇到这个问题没太放在心上,还以为是自己误删除了,想着以后删除文件的时候尽量小心点,直到发现重要文件被删除后没有经过废纸篓,而被直接删除了,这才引起重视&#xff…

java项目-第160期ssm大学生校园兼职系统_ssm毕业设计_计算机毕业设计

java项目-第160期ssm大学生校园兼职系统_ssm毕业设计_计算机毕业设计 【源码请到资源专栏下载】 今天分享的项目是《ssm大学生校园兼职系统》 该项目分为3个角色,管理员、学生、企业。 学生角色可以访问前台,查看企业信息、招聘信息进行应聘。 企业角色…

Android Material Design之NavigationView(五)

先上图 使用说明 NavigationView与DrawerLayout 成对出现,经常被用作侧滑菜单,因此当我们使用 NavigationView时布局文件的根节点一定是DrawerLayout 属性 NavigationView 属性描述android:id控件idandroid:layout_width控件的长度android:layout_height控件的高度android…

关于web前端大作业的HTML网页设计——我的班级网页HTML+CSS+JavaScript

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

Flink CDC 新一代数据集成框架

前言: 主要讲解了技术原理,入门与生产实践,主要功能:全增量一体化数据集成、实时数据入库入仓、最详细的教程。Flink CDC 是Apache Flink的一个重要组件,主要使用了CDC技术从各种数据库中获取变更流并接入到Flink中&a…

神经网络训练不起来,怎么办?

从optimization的角度,Cross-entropy比Mean Square Error更加适合用在分类上。使用Cross-entropy这个Loss function的时候,pytorch自动帮你把Soft-max加到你的Network的最后一层。 Optimization Critical Point是Saddle Point还是Local Point&#xff1…

【蓝桥杯web】第十四届蓝桥杯(Web应用开发)模拟赛1期-大学组

数据类型检测 请看这篇数据类型检测 渐变色背景生成器 html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name&…

华为云安全亮相世界互联网大会

近日&#xff0c;以“共建网络世界 共创数字未来——携手构建网络空间命运共同体”为主题的世界互联网大会在浙江乌镇盛大举行。华为云安全专家团队携全新的安全运营2.0和数据安全解决方案亮相峰会现场&#xff0c;重点展示华为云在安全运营和数据方案的最新实践成果&#xff0…

小啊呜产品读书笔记001:《邱岳的产品手记-11》第21讲 产品案例分析:Fabulous的精致养成

小啊呜产品读书笔记001&#xff1a;《邱岳的产品手记-11》第21讲 产品案例分析&#xff1a;Fabulous的精致养成一、今日阅读计划二、泛读&知识摘录第21讲 产品案例分析&#xff1a;Fabulous的精致养成三、头脑风暴四、思考叮嘟&#xff01;这里是小啊呜的产品进阶读书笔记整…

病毒和战争齐飞,24 届秋招会更惨吗?

2022 壬寅年&#xff0c;病毒和战争齐飞&#xff0c;流言和混乱四起。2023 届秋招的残酷已不需要再多说&#xff0c;各大平台校招社招一片哀嚎&#xff0c;如果说往年的各种帖子是在贩卖焦虑&#xff0c;今年就是实打实的就业寒冬。 先来看段分析&#xff0c;来自阮一峰大佬&a…

刷题看力扣,刷了两个月 leetcode 算法,顺利拿下百度、阿里等大厂的 offer

随着互联网寒潮的到来, 越来越多的互联网公司提高了面试的难度&#xff0c;其中之一就是加大了面试当中手撕算法题的比例。这里说的算法题不是深度学习&#xff0c;机器学习这类的算法&#xff0c;而是排序&#xff0c;广度优先&#xff0c;动态规划这类既考核数据结构也考核编…

《深入浅出Python量化交易实战》:散户也能学会的数字化交易策略

前言 您可能不知道&#xff0c;许多专业的交易机构已经采用设定程序完成自动化交易&#xff0c;通过机器语言&#xff0c;解密盘面的走势&#xff0c;从而实现持续盈利的目的。 &#xff08;文末送读者福利&#xff09; 这并非什么秘密&#xff0c;他们正是借助了这样的数字…

树和二叉树练习题

文章目录一 二叉树的五大性质二 判断题三 填空题四 选择题四 分析求解题五 算法设计题一 二叉树的五大性质 性质一&#xff1a;对于一颗二叉树&#xff0c;第i层的最大结点数量为 2i−12^{i-1} 2i−1 性质二&#xff1a;对于一颗深度为k的二叉树&#xff0c;可以具有的最大结点…

[附源码]SSM计算机毕业设计基于健身房管理系统JAVA

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

基于残差学习的卷积神经网络图像去噪研究-含Matlab代码

⭕⭕ 目 录 ⭕⭕✳️ 一、引言✳️ 二、深度去噪网络结构设计✳️ 2.1 网络层数的设定✳️ 2.2 残差学习✳️ 2.3 批规范化✳️ 三、实验结果✳️ 3.1 网络训练✳️ 3.2 实验结果比较✳️ 四、参考文献✳️ 五、Matlab代码获取✳️ 一、引言 由于图像去噪问题的退化模型假设比…

如何在确保身份安全的同时改善员工体验

疫情后世界的员工已经告别了传统的工作环境。远程和混合工作是新常态&#xff0c;员工希望即使在远程工作时也能完全访问他们的工作资源。他们还可能使用多个设备&#xff08;甚至是个人设备&#xff09;来访问公司数据。 现代工作环境 — IT 挑战 由于需要考虑的因素特别多&a…

软件测试面试技巧有哪些?可以从这2个方面去进行准备

面试所有只职场人&#xff0c;通往工作岗位的第一道关卡&#xff0c;也是最重要的一道门槛。而面试中&#xff0c;如何回答HR提出的问题很大程度上决定了面试能不能成功。所以这些软件测试的面试技巧你可不能错过了。 首先是自我介绍 自我介绍的时间不能太短&#xff0c;几十秒…

协同过滤算法

文章目录0 前言1. 概念1.2 分类2 基于用户的协同过滤2.1 相似性计算2.1.1 欧氏距离2.1.2 余弦相似度2.1.3 皮尔逊相关系数Pearson2.1.4 杰卡德相似度 Jaccard小结&#xff1a;2.2 结果分数2.3 优缺点分析3 基于物品的协同过滤3.1 结果分数3.2 优缺点分析4 总结4.1 应用场景4.2 …

list的介绍及使用(14)

目录 1、list的介绍 2、list的使用 1、list的构造 2、迭代器 3、list modifiers 4、list element access 5、list capacity 1、list的介绍 1、list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。 2、list的底层是双…