JavaScript的语法、数据类型、基本算数和逻辑运算操作
str.toString()
可以把字符串、数值、布尔值、对象转为字符串
String(str)
任何数值强制转换为字符串类型
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var num=123;
console.log(typeof num.toString());//string
console.log(typeof String(num));//string
</script>
</body>
</html>
其他类型转布尔值
1、数值型,除了0,其余都是转为true
2、字符串型,除了""空字符串,其余都是转为true
3、null 和 undefined 转为false
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var num;
console.log(Boolean(num));//false
</script>
</body>
</html>
在进行算数运算时,浏览器会尝试隐式转换字符串
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var num1=1;
var num2="30";
console.log(num1+num2);//130 此处+为字符串拼接
console.log(typeof(num1+num2));//string
console.log(num1*num2);//30
console.log(typeof(num1*num2));//number
</script>
</body>
</html>
++num 先递增,再运算
num++ 先运算,再递增
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var num1=2;
var num2=3;
var num3=++num1+num2++;
console.log(num1);//3
console.log(num2);//4
console.log(num3);//6
</script>
</body>
</html>
== 和 ===
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
console.log(null==undefined);//true undefined派生自null
console.log(null===undefined);//false 是两种不同的基本类型
</script>
</body>
</html>
三元运算符可以简化部分if判断的语句
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
var score=85;
var result=score>60?'及格':'不及格';
console.log(result);//及格
</script>
</body>
</html>
&&
如果都是布尔值,则所有布尔值都为true时,返回true;有一个为false则返回false
如果不都是布尔值,则:
如果第一个隐式转换后是true,则返回第二个值;如果第二个也隐式转换为true,则返回第三个;以此类推
如果第一个隐式转换后是false,则返回第一个值
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script> console.log(15 && 'hello~');//hello~
console.log(0 && 'hello~');//0
console.log(25 && 'str' && null);//null
</script>
</body>
</html>
||
如果都是布尔值,有一个为true,则返回true
全部都是false,则返回false;
如果不都是布尔值,则第一个数值隐式转换为true,就返回第一个数值;否则依次往后
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script> console.log(15 || 'hello~' || NaN);//15
console.log(0 || undefined);//undefined
console.log('' || 'str' || null);//str
</script>
</body>
</html>
! 取反
!! 取反再取反
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script> console.log(!null);//true
console.log(!!null);//false
</script>
</body>
</html>
JavaScript的语法、数据类型、基本算数和逻辑运算操作的更多相关文章
- JavaScript 基本语法 -- 数据类型 & 变量
JavaScript都有哪些数据类型呢? 在JavaScript里面,数据类型分为两类:原始类型(primitive type)和对象类型(object type) 1. 原始类型(我的理解,不可分割 ...
- javascript基础语法备忘录-变量和数据类型
//javascript基础语法备忘录-变量和数据类型 // 定义变量使用var关键字 后面跟变量名,不要使用eval 和arguments为变量名 var message = "hi&qu ...
- Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符
JavaScript用来干什么 数据的验证 将动态的内容写入到网页当中(ajax) 对事件做出相应 读写html当中的内容 检测浏览器 创建cookies 模拟动画 语法特点 基于对象和事件驱动的松散 ...
- JavaScript 基础语法
1 谈谈 JavaScript JavaScript,通常会简称为'JS', 是一种浏览器脚本语言 1.1 JavaScript 编程语言特点 JavaScript是一种脚本编程语言 JavaScri ...
- 二、JavaScript的语法
目录: 1.变量:存储数据的容器 2.数据类型 3.string数据类型 4.number数据类型 5.boolean数据类型 6.数据类型的隐式转换 6.数据类型转换函数 7.特殊类型 8.算术运算 ...
- JavaScript---js语法,数据类型及方法, 数组及方法,JSON对象及方法,日期Date及方法,正则及方法,数据类型转换,运算符, 控制流程(三元运算),函数(匿名函数,自调用函数)
day46 一丶javascript介绍 JavaScript的基础分为三个 1.ECMAScript:JavaScript的语法标准.包括变量,表达式,运算符,函数,if语句,for语句 ...
- JavaScript基本语法(二)
上篇博文写到JavaScript的数据类型.JavaScript包括了字符串(String).数字(Number).布尔(Boolean).数组(Array).对象(Object).空(Null).未 ...
- JavaScript基本语法(一)
前段时间学习了HTML和CSS,也实战了一些结构较简单的项目.在还没运用到JS的知识时,做出来的效果总觉得少了些什么.虽然总体布局与一些基本的特效,也能用HTML+CSS就能完成.但如今开始进入Jav ...
- javascript运算符语法概述
× 目录 [1]个数 [2]优先级 [3]结合性[4]类型[5]规则表 前面的话 javascript中的运算符大多由标点符号表示,少数由关键字表示,它们的语法言简意赅,它们的数量却着实不少.运算符始 ...
随机推荐
- DDD-CQRS的落地案例
摘要 在之前的文章DDD-CQRS能解什么问题中,阐述了什么是CQRS.但是并没有业务需求可以应用CQRS.最近需要处理一个文本增量更新的业务,经过需求分析后,尝试使用CQRS来解这个问题 问题分析 ...
- 如何快速查看Linux日志?
因为在生产环境会遇到很多问题,那么最快的定位方式莫过于去看日志,我们都知道服务器每天会产生大量的日志,那么如何快速的定位也就是最关键的. 本文介绍六种查看日志的命令:tail.head.cat.mor ...
- gdiplus exception
<span style="font-size:14px;">#include <windows.h> #include <gdiplus.h> ...
- windows 使用ssh连接docker容器
在Windows上搭建docker服务器需要在Windows模拟一个Linux平台,然后在Linux平台上搭建的docker服务器,所以在使用ssh工具连接docker容器的时候,使用的ip地址不是d ...
- Ansible:roles初始化系统
简介 本文介绍ansible的roles,通过roles来实现系统的初始化,其相当于将ansible的playbook拆分.本文通过Jenkins,传参,调用playbook来初始化系统. Githu ...
- redis说明及部署
一.reids 概述 redis全称REmote DIctionary Server.一个基于KV的持久化分布式数据库.所编写的语言为C.与另一个分布式缓存Memcached有几分相似 但是redis ...
- [Effective Java 读书笔记] 第三章 对所有对象都通用的方法 第八 ---- 九条
这一章主要讲解Object类中的方法, Object类是所有类的父类,所以它的方法也称得上是所有对象都通用的方法 第八条 覆盖equals时需要遵守的约定 Object中的equals实现,就是直接对 ...
- python使用turtle库绘制奥运五环
效果图: #奥运五环 import turtle turtle.setup(1.0,1.0) #设置窗口大小 turtle.title("奥运五环") #蓝圆 turtle.pen ...
- win10电脑搭建网站
新建网站之后,IIS错误提示是:在计算机“.”上没有找到服务W3SVC,需要在“启动或关闭windows功能”添加.net 3.5下面的两个程序. https://img-blog.csdn.net/ ...
- LVM知识梳理
1 LVM介绍 LVM即logical volume manager逻辑卷管理,其主要特点是:可以动态地扩大和缩小分区大小,但前提是分区的文件系统必须是LVM格式的,lvm的实现需要安装lvm2软件包 ...