「这是我参与11月更文挑战的第8天,活动详情查看:2021最后一次更文挑战」。
1、
window作用域- 只要在
script标签中定义的变量,默认就在window的作用域之下 - 默认就是
window这个对象里面写代码
- 只要在
2、数据类型
number:数字string:字符类型,必须用引号引起来boolean:布尔类型truefalsenull:变量引用了一块堆中一个空的空间object:引用对象类型(存在于堆里面)array:数组类型function:函数数据类型
对象数据类型:
object,array,function3、
javascript脚本执行顺序- 定义
varfunction - 执行 其他所有
- 定义
知识点:
1、运算符
算术运算符(
+,-,*,/,%,++,--)- 如果引用所指的地方是
null的话,那么在运算中就会自动变成0 %运算符 如:4%5取模 模是47%5取模 模是7-5=2
- 如果引用所指的地方是
字符串和数字相加的情况:
- 左右都是数字:数字相加
- 左右有一个字符串:字符串拼接
- 左右边有一个
null:null看做0 - 左右边有一个
undefined:结果是NAN(not is number)
赋值运算符(
=,-=,+=,*=,/=,%=)比较运算符(
==,===,!=,>,<,>=,<=)- 先执行表达式计算再赋值
==和!=在比较之前首先让双方的值做隐士类型转换,===不转换
逻辑运算符(
||,&&,!)||在js中和PHP中是不一样的 js中返回逻辑或的左边或右边的一个结果 PHP返回||或出来以后的结果即:truefalse- 特殊性(注意)—一定要记住(这个特性和其他编程语言不一样):在
js里返回不是布尔值 ||短路运算 第一个条件为真 后面不执行&&把表达式最后一个值返回(注意这里)
条件运符(表达式1?表达式2:表达式3)三元运算符
表达式1?表达式2:表达式3表达式1为真 返回表达式2 否则返回表达式3- 三元运算符 可以多层次嵌套使用
2、在js中 有四种被认为是非:
undefinednullfalse0
- 例子:
var age = prompt("温馨提示:","请输入您的年龄")||0 - 当点击取消的时候,如果出现
undefinednullfasle0表示非的逻辑 那么||就会过滤,取右边的值0
1、运算符
- 算术运算符(
+,-,*,/,%,++,--) - 如果
+号左边和右边有一边是字符串类型的数据的话,这个时候就变成字符串拼接 var str = "你好"+123;//你好123var count = 2;var str1 = "你叫了我第"-count+"次";//你叫了我第2次- 如果引用所指的地方是
null的话,那么在运算中就会自动变成0
- 算术运算符(
2、赋值运算符*(
=,-=,+=,`=,/=,%=`)3、 比较运算符(
==,===,!=,>,<,>=,<=)- 先执行表达式计算再赋值
==和!=在比较之前首先让双方的值做隐士类型转换,===不转换
- 4、逻辑运算符(
||,&&,!) - 5、条件运算符(
1>2?3:4)
知识点:
1、console.log调试程序
- 开发中大量使用这个 而不用
alert
2、条件结构
if
javascript中if语句优化写法
- 使用常见的三元操作符
1 | if (foo) bar(); else baz(); ==> foo?bar():baz(); |
- 使用
and(&&)和or(||)运算符
1 | if (foo) bar(); ==> foo&&bar(); |
if...elseif...else if...else- 当通过判断返回某个值的时候,优先使用三元表达式
- 当通过判断执行
N段逻辑代码的时候,只能用条件结构