一,JS的运行环境

  1. 在html中使用JS,浏览器去解析
  2. NodeJS环境内封装了JS的解析器

二,JavaScript的特点

1.客户端执行

2.执行顺序自上而下

3.弱类型(数据类型)语言

var a = 1;

var a = 'hello';

4.解释性语言,可直接执行

三,逻辑与 &&  短路运算符

a&&b

返回值不一定为boolean类型

有假则假,同真为真

如果第一个数是假性值,那么返回该值

如果第一个数是真,返回第二个数

四,逻辑或 || 短路运算符

a||b

返回值不一定为boolean类型

有真则真,同假则假

如果第一个数是真,那么返回第一个数

如果第一个数是假的,直接返回第二个数

 

五,逻辑非  ! 取反

将一个其他数据类型转换成boolean类型的反值

!true  false

!null  true

!''    true

!!''   false

!!将其他的数据类型转换成boolean类型

六,类型转化:

1,其他数据类型转换成boolean

Boolean()

!!

2,其他数据类型转换成string

.toString()

String()

+''

3,其他数据类型转换成number类型

Number()

+

+的特性

如果两边都是number类型,进行累加

如果两边有一个是number类型,另外一个不是string类型,将另外一个转成number 类型再累加

如果有一边是string类型,另外一边是其他的基本数据类型,直接进行字符串的拼接

一元运算符+,进行数据类型的转换

有一边是number类型,另一边是object类型,优先调用valueOf()方法,如果没有则调用toString()方法

1+obj

有一边是string类型,另一边是object类型,优先调用valueOf()方法,如果没有则调用toString()方法

'hello'+obj

day1-4js算术运算符及类型转化的更多相关文章

  1. PHP中的运算符---算术运算符、逻辑运算符、赋值运算符、比较运算符

    1.算术运算符 常见的算术运算符 运算类型 运算符 举例 结果 取反运算 - -$a 返回$a的负值 加法运算 + $a + $b 返回$a与$b的和 减法运算 - $a - $b 返回$a与$b的差 ...

  2. C++ 类型转化(运算符重载函数)和基本运算符重载(自增自减)

    类型转化(运算符重载函数) 用转换构造函数可以将一个指定类型的数据转换为类的对象.但是不能反过来将一个类的对象转换为一个其他类型的数据(例如将一个Complex类对象转换成double类型数据).在C ...

  3. js常用算术运算符与一元运算符在做运算时不同类型的转换规则

    /** * 算术运算符:+, -, *, /, % * 当对非number类型的值进行运算(-, *, /, %)时,会将这些值先转换成number再运算,加法'+'运算除外, * 当对非number ...

  4. 040_字符串连接符 041_条件运算符目 042_运算符优先级_逻辑与或优先问题 043_自动类型转化 044_强制类型转换 045_基本类型常见错误_溢出_L问题

    040_字符串连接符 package test_package; /** * 字符串运算符 * @author * */public class TestOperator05 { public sta ...

  5. JAVA算术运算符、关系运算符和位运算符

    算术运算符 1.java的算数运算符包括+(加).-(减).*(乘)./(除).%(取余),在运算过程中出现的隐式转换原则和C语言一样:2. 高位数据向低位数据转化要使用强制转化: 关系运算符 1.j ...

  6. Java中byte、short、char、int、long运算时自动类型转化问题

    -------------------------------------------------------------------------------------------------- ★ ...

  7. C# 运算符和类型强制转换(6) 持续更新

    C#支持的运算符 https://msdn.microsoft.com/zh-cn/library/6a71f45d(v=vs.140).aspx checked 和 unchecked ; b++; ...

  8. C#定义类型转化 及 格式化字符串

    operator 关键字 operator 关键字用来重载内置运算符,或提供类/结构声明中的用户定义转换.它可以定义不同类型之间采用何种转化方式和转化的结果. operator用于定义类型转化时可采用 ...

  9. C++中的显式类型转化

    类型转化也许大家并不陌生,int i; float j; j = (float)i; i = (int)j; 像这样的显式转化其实很常见,强制类型转换可能会丢失部分数据,所以如果不加(int)做强制转 ...

随机推荐

  1. 基于XML装配bean的解析-Bean的作用域

    一.Bean的种类1.普通bean:<bean  id=""  class="A"> ,spring直接创建A实例,并返回. 2.FactoryBe ...

  2. python基础 pyc

    关于pyc的几点记录: python运行时会将python语句----->"字节码"------>转发到"虚拟机" 字节码:在大型的python程序 ...

  3. Docker - 周边 - Go Template

    概述 docker inspect -f 引出 希望学会后, 可以处理这个命令 问题: 这是啥 疑问 最开始, 我以为是 jsonpath 后来看 命令行的解释, 说叫 go template 但是我 ...

  4. CentOS7安装jdk教程

    引言Oracle JDK和OpenJDK的简单介绍Oracle JDK是基于Java标准版规范实现的,以二进制产品的形式发布.它支持多种操作系统,如Windows,Linux,Solaris,MacO ...

  5. Hadoop3.1.1源码Client详解 : 入队前数据写入

    该系列总览: Hadoop3.1.1架构体系——设计原理阐述与Client源码图文详解 : 总览 紧接着上一篇: Hadoop3.1.1源码Client详解 : 写入准备-RPC调用与流的建立 先给出 ...

  6. Springboot 中AOP的使用

    面向切面编程(Aspect Oriented Programming) 是软件编程思想发展到一定阶段的产物,是面向对象编程的有益补充.AOP一般适用于具有横切逻辑的场合,如访问控制.事务管理.性能检测 ...

  7. ES-Result window is too large

    问题: Result window is too large 解决: PUT http://127.0.0.1:9200/catalog/_settings { "index": ...

  8. bfs迷宫

    链接:https://ac.nowcoder.com/acm/contest/338/BSleeping is a favorite of little bearBaby, because the w ...

  9. Python使用Tensorflow出现错误: UserWarning: The default mode, 'constant'

    Python使用Tensorflow出现错误: UserWarning: The default mode, 'constant', will be changed to 'reflect' in s ...

  10. java 编译java文件 以及生成可执行jar

    1.新建java project: 2.src下新建包以及class文件: 3.打包: 5.选取目标mainclass 很关键决定jar是否可执行: 7.build jar : 8:artifact ...