目录
一.js的运算符
1.算数运算符
+ 运算符
- 运算符
% 取余
/除运算
自增/自减
相关代码
2.比较(关系)运算符
关系运算符
== 和 === 的区别
3.逻辑运算符
或 ||
与(并且) &&
非 !
判断规则
逻辑运算的短路算法
4.三元运算符
三元运算符 ? :
5.赋值运算符
运算符的优先级
二.相关扩充
1.语句和表达式的区别
2.一/二元运算
3.parseInt(num)
4.数据类型的显示转换
三.简单的对象操作
相关代码
算数运算符
+ - * / % ++ --
+ 运算符
let num1 = 10 let num2 = 20 let num3 = num1 + num2 console.log(num3)
如果 + 的两边有一个是字符串,则表示的是字符串的拼接。
原理:如果两个不同类型的数据相加,有一个是字符串,则另一个数据会被隐式转化为字符串,然后通过+ 和另一个数据拼接在一起
- 运算符
-运算符可以把他两边的字符串类型 隐式转化为 数字类型,如果被转化的字符串是 一个数字,则参与减法运算,如果 被转化的字符串是 一个普通字符,则得出的结果是 NaN
除了 + 运算的时候,把数字转化为字符串,其他的算术运算符都是把字符串转化为数字
% 取余
% 取余 又称 模运算,运算的结果是 相除之后的余数,被除数%除数 返回结果是 余数
被除数和除数不一定都是整数
/除运算
自增/自减
自增:++ 作用:让变量的值+1 使用场景:经常用于计数来使用。比如进行10次操作,用它来计算进行了多少次了
前置自增:每执行一次,当前变量值加1,其作用相当于 num += 1
后置自增:每执行一次,当前变量数值加1 ,其作用相当于num += 1
区别:前置自增:先自加再使用(记忆口诀:++在前 先加 ) 后置自增:先使用再自加(记忆口诀:++在后 后加)
++ 和 -- 的运算优先级要高于加减乘除 + - * / %
js运算符
js运算符
+
=
关系运算符
> 大于, < 小于, >=大于等于 , <=小于等于 , ==等于, != 不等于 === 全等 , !== 不全等
关系表达式 的 返回值是 true 或者false
== 和 === 的区别
== 只比较数值,不比较类型
=== 不但比较数值还比较类型
关系运算符
逻辑运算符
或 ||
与(并且) &&
非 !
判断规则
$$ 逻辑与 并且 特点:符号两边都为ture结果才为ture 口诀:一假则假
| | 逻辑或 或者 特点 :符号两边有一个ture就为ture 口诀:一真则真
! 逻辑非 取反 特点:ture变false false变ture 口诀:真变假,假变真
逻辑运算的短路算法
表达式1 || 表达式2 表达式1为真的时候,表达式2不会被解析
表达式1 && 表达式2 表达式1为真的时候,表达式2才会被解析
三元运算符 ? :
判断条件 ?判断条件为真,则执行当前代码 :判断条件为假,则执行当前代码
逻辑运算符
- 目标:能够使用赋值运算符简化代码
- 赋值运算符:对变量进行赋值运算
- 已经学过的赋值运算符: = 将等号右边的值赋予给左边,要求左边必须是一个容器
- 其他赋值运算符: += -= *= /= %= 使用这些运算符可以在对变量赋值时进行快速操作
1. !的优先级比 算术运运算符的优先级高
2.boolean 数据和number类型的数据运算的时候,布尔类型会隐式转化为number类型,其中 false=>0 true=>1
优先级
1.小括号()
2.!
3.算术运算符
4.比较运算符
5.逻辑运算符
6.赋值运算符
赋值的简写
= += -= /=
简写形式 含义
n += 1; => n = n + 1;
n -= 1; => n = n - 1;
n *= 1; => n = n * 1;
n /= 1; => n = n / 1;
运算符优先级
表达式和语句:表达式是可以求值的代码,javascript引擎会将其计算出一个结果 。 语句:语句是一段可以执行的代码。
区别:表达式:因为表达式可被求值,所以它可以写在赋值语句的右侧。 表达式 num = 3+4
语句:而语句不一定有值,所以比如 alret()弹出对话框 consols.log()控制台打印输出
一元运算符 :+- 众多的javascript的运算可以根据表达式的个数,分为一元运算符,二元运算符,三元运算符
二元运算符 let num = 10+10
把数字 num 直接转化为整数,他会去掉 num的小数部分
显示转换
把数据转化为字符串,使用 String()
把数据转化为number,使用 Number()
把数据转化为boolean,使用 Boolean()
另外,非0即为真
0,'' ,null ,undefined 都会转化为 false
数据类型的显示转换
通过 document.getElementById('id') 获取html中的dom元素
每一个html标签都是一个对象,称为dom对象,每一个标签的属性也是一个对象的属性
设置对象属性的值 obj.属性值 = 'aa';
获取对象属性的值 obj.属性名
每一个html标签都有style标签,因此可以使用js 操作style,’
如果设置stylr属性,则给标签行间添加一个style属性
let abc = document.getElementById('bb');
abc.style.color = '#f00';
如果属性是组合形式的,需要把-去掉,使用驼峰命名法
abc.style.fontSize = '50px';
console.log(abc.title) //获取title的值0
let txt = document.getElementById('txt')
let bth = document.getElementById('bth')
给bth添加点击事件
bth.onclick = function(){
alert(txt.value);
console.log(txt.value);
txt.style.border = '2px #f00 solid';
};
通过原生js设置对象
使用{}创建对象,它里面设置属性的方式是 key:value
key是属性名 value是属性值
获取属性的值 obj.key
设置属性的值 obj.key = value
如果访问一个对象中不存在的属性那么他的结果是undefined
let obj = {
name:'黑山羊',
age:213123320,
sex:'女'
};
let obj2 = {
name:'混沌',
age:202131321,
sex:'男'
};
console.log(obj.name);
console.log(obj.age);
console.log(obj2.name);
console.log(obj2.age);
// obj2中没有属性 run,因此结果是unedefined
console.log(obj2.run);
简单的对象操作
哎哟,你干嘛~~~
唱跳,wrap,篮球。