javascript运算符

一、运算符和操作数的组合就称为表达式。

二、javascript运算符

(一) 算术运算符
  + - * / % var++ ++var var-- --var
  A. +
    (1) 用于数值的运算
    (2) 用于字符串的连接
  ***************************
  任何的数据类型和字符串相加都是等于相加以后的字符串
  *************************

  B. %
    (1)用于取余数,判断奇数或者是偶数
    (2)一般不用于小数,因为结果不确定。

  C. var++和++var
    ++在前面,自己先加,然后再赋值。
    ++在后面,先赋值,然后自己再加。

(二) 关系运算符(比较运算符)
  < > <= >= == === != !==
  (1)他运算的结果都是布尔值
  (2)都是字符串的时候,他会先转换成ASCII码然后进行比较他们的第一个字母。
  (3)都是数值的时候,他会正常比较
  (4)当一个字符串,另一个是数值的时候,把字符串尝试转换成数值类型,然后进行比较,如果不能转换成数值类型,则会返回NaN,然后返回假
  (5) undefined null
  (6)如果两个都是数值型字符串,那么他们也是只比较第一个
  (7)如果一个数值和布尔值进行比较,会把布尔值转换为数值再进行比较,true为1,false为 0

  A. == 只比较值是否相等
  (1) 比较字符串的时候是比较他们的ASCII码是否相等
  (2) 比较两个数值的时候是比较他们的数值是否相等
  (3) 比较函数的时候,判断他们的内存位置是否相等。
  B. === 不但比较值是否相等,还比较类型是否相等。

(三) 赋值运算符
  = += -= *= /= %=
  A. +=
  var a=1;
  a+=3; a=a+3
  (1) 用于数值的相加再赋值
  (2) 用于字符串的连接再赋值
  ***************************
  任何的数据类型和字符串相加都是等于相加以后的字符串
  *************************

(四) 逻辑运算符(布尔运算符)
  与 and && 或 or || 非not !

  A. &&
  if(a && b){
    alert("两个都是真的");
  }else{
    alert("至少有一个是假的")
  }
  运算符两边只要有一个是假,那么他的运算结果就是假,只有两个都为真的时候,运算结果才是真的。

  B.||
  if(a || b){
    alert("至少有一个是真的");
  }else{
    alert("两个都是假的")
  }
  运算符两边只要有一个是真的那么他就是真的,只有当两个都是假的时候,他才是假的。

  C.not !
  取反,假的变成真的,真的变成假的。

  (1)逻辑运算符可以对任何类型的数据进行运算但是在运算的时候,可以转换为对应的布尔值
    转换的规则

         Undefined-->false
             Null-->false
                     Boolean-->就是本身的值
          Number-->除了0以外都是真的
                     String-->除了空字符串意外都是真的
             对象-->真的

  (2)类变量进行赋值
    var a= b && c
    如果一个运算数是对象,另一个是 Boolean 值,返回该对象
    如果两个运算数都是对象,返回第二个对象
    如果某个运算数是 null,返回 null
    如果某个运算数是 NaN,返回 NaN
    如果某个运算数是 undefined发生错误
    var a=b ||c
    如果一个运算数是对象,并且该对象左边的运算数值均为 false,则返回该对象
    如果两个运算数都是对象,返回第一个对象
    如果最后一个运算数是 null,并且其他运算数值均为 false,则返回 null
    如果最后一个运算数是 NaN,并且其他运算数值均为 false,则返回 NaN
    如果某个运算数是 undefined发生错误

(五) 一元运算符
  typeof + - delete new ++ --

  A. +
    正号、正数

  B.delete
    删除对象的方法或是属性

  C.new
    用来创建一个对象

(六) 特殊的运算符

  , () = ? :
  A. ,
  用来一次声明多个变量

  B.()
  (1) 运算的时候有优先级的作用
    a*(b-c)
  (2) 运行一段函数

  C.根据表达式的计算结果有条件的为变量赋值
  格式: var 变量= Boolean expression?真值:假值

(七) 位运算符

JavaScript学习笔记——运算符和表达式相关推荐

  1. JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  2. JavaScript学习笔记(三)--操作运算符

    JavaScript中的运算符有很多,主要分为算术运算符,比较运算符,逻辑运算符,三目运算符.一元运算符.位运算符等.这些运算符都有一些属于自己的运算规则,下面就为大家介绍一下JavaScript中的 ...

  3. JavaScript 学习笔记(1)

    1.     何为 Jscript JScript 是一种解释型的.基于对象的脚本语言. 局限性: 1)        不能使用该语言来编写独立运行的应用程序 2)        没有对读写文件的内置 ...

  4. JavaScript学习笔记04【高级——DOM和事件的简单学习、BOM对象】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  5. JavaScript学习笔记(一)-Learning Advanced JavaScript

    JavaScript学习笔记 (一)- Learning Advanced JavaScript Learning Advanced JavaScript #2: Goal: To be able t ...

  6. JavaScript学习笔记一

    JavaScript学习笔记 1. 介绍 2. 基础语法 输入输出 变量 数据类型 简单数据类型 复杂数据类型 类型转换 3. 运算 算术运算符 递增递减运算符 比较运算符 逻辑运算符 赋值运算符 运 ...

  7. 千锋JavaScript学习笔记

    千锋JavaScript学习笔记 文章目录 千锋JavaScript学习笔记 写在前面 1. JS基础 1.1 变量 1.2 数据类型 1.3 数据类型转换 1.4 运算符 1.5 条件 1.6 循环 ...

  8. Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  9. JavaScript学习笔记(备忘录)

    JavaScript学习笔记(备忘录) ===运算符 判断数值和类型是否相等.如: console.log('s'==='s') //输出trueconsole.log('1'===1) //输出fa ...

  10. JavaScript学习笔记07【6个经典案例——电灯开关、轮播图、自动跳转首页、动态表格、表格全选、表单验证】

    Java后端 学习路线 笔记汇总表[黑马程序员] w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符. ...

最新文章

  1. java 静态内部类
  2. 关于Reporting Service中的Report builder的几个疑问,高手来解答下
  3. 【ssh从零单排】关于HTTP Status 404的debug问题
  4. 全球及中国综艺节目产业营销策略分析及创新格局规划建议报告2021-2027年
  5. 每天学一点儿shell:Linux三剑客——sed命令
  6. boost::function_types::result_type用法的测试程序
  7. chrome和safari字体粗细问题
  8. python数据清理_Python-数据清理
  9. 阿里云面向制造业推出防疫复工数字化方案 复工效率提升50%以上
  10. 2018杭州电子科技大学计算机研究生复试笔试编程题第三题
  11. Spring Cloud教程 (二)应用程序上下文服务层次结构
  12. Android事件机制全然解析
  13. java实现tcp服务器(单线程、多线程)、客户端
  14. zend studio php 接口,通过PHP环境ZendStudio轻松实现webservice接口
  15. 迅盘从入门到精通 彻底告别WIN7关机烦恼 T400亲测
  16. unity动态禁用/启用组件enabled
  17. 《网蜂A8实战演练》——11.Linux 电容式触摸屏驱动
  18. 华为服务器型号大全rh2288h,华为服务器 RH2288H V3 12*3.5盘位 E5-2680 v4*2 16GB*8 6000G*3 R5 750W*2 4*GE.....
  19. mysql rds云数据库_云数据库 RDS MySQL快速入门手册
  20. ubuntu下安装nccl具体教程

热门文章

  1. 面向对象之Python的链表实现(二)循环链表
  2. Scikit-learn:模型评估Model evaluation 之绘图
  3. uniapp 生成二维码长按保存_工程设备巡检如何用二维码管理?
  4. 7-2 换硬币 (20 分)
  5. L1-017 到底有多二 (15 分) — 团体程序设计天梯赛
  6. HTML 标签学习总结第一天
  7. Navicat for Mysql安装及破解教程
  8. 信息系统项目管理师 高级 论文备考专题 老师现场写论文
  9. C语言 · 冒泡法排序
  10. PHPExcel如何把该列的值设置为文本无科学计数?