数据类型检测
语法 typeof x
var str1 = '100'
var str2 = 100
var str3
var star4 = true
var star5 = null//object
console.log(typeof (null));//判断数据类型
js组成
<!-- 1.行内式 不推荐 -->
<button onclick="alert('你好')">按钮</button>
<!--2.内嵌式
学习阶段推荐
一般写在body标签尾部-->
<script>
//js组成
//es Bom Dom
//es:基础js语法
//Bom基于浏览器对象进行操作
//Dom基于文本文档类型进行操作
</script>
<!-- 3.外联式
目前公司都是外联式 因为公司代码量肯定比较大 -->
<script src="./01.html "></script>
变量
变量是计算机中存储数据的一个标识符号,通过这个标识符可以找到内存中的存储的数据,使用变量的时候,用到是内部存储的数据.
变量赋值:变量名 =值
JS的数据类型转换
// 1.转换位数字类型
// 如果转换的字符串是纯数字组成的,那么直接转我换为数字
// NAN:表示的是一个number的数字,但是灭有办法通过常规的数字表明 坏掉的数字
console.log(typeof (Number('100')), Number('100'));//会将'100'转换位 数字,然后打印到控制台
console.log(typeof (Number('')), Number(''));//0
console.log(typeof (Number('abc')), Number('abc'));
console.log(typeof (Number(false)), Number(false));//false0 true1
console.log(typeof (Number(null)), Number(null));//0
console.log(typeof (Number(undefined)), Number(undefined));//0
console.log(typeof (parseInt('100abc')), parseInt('100abc'))//100
console.log(typeof (parseInt('100abc')), parseInt('abc11'))//nan
console.log(typeof (parseInt(' ')), parseInt(' '))//NAN
console.log(typeof (parseInt(null)), parseInt(null))//NAN
console.log(typeof (parseFloat('100.42332')), parseFloat('100.42332'));//不变
console.log(typeof (parseFloat('100')), parseFloat('100'));//不变
// String
// var a = 100
// var c = true
// var d = undefined
// // var b = String(a)
// var b = String(true)
// console.log(a, b);
// console.log(typeof a, typeof b);
// 2.toString()
var a = 100
// null undefined不能toString
var b = a.toString()
console.log(a, b);
//3. +
var c = 100
var d = a + ""
console.log(typeof d, d);
// Boolean(变量)
// 在js中,只有''、0、null、undefined、NaN,这些是false,其余都是true
var a = 100
var b = Boolean(a)
console.log(a, b);
var c = NaN
var d = Boolean(c)
console.log(c, d);
数字运算符
+ - * /
- +只有符号两边都是数字的时候才会进行加法运算 只要符号任意一边是字符串类型,就会进行字符串拼接
- -会执行减法运算 会自动把两边都转换成数字进行运算
- *会执行乘法运算 会自动把两边都转成数字进行运算
- /会执行除法运算 会自动把两边都转换成数字进行运算
赋值运算符
// 赋值运算符
var a = 1
a = 2
console.log(a);
// += -= *= /= %=
var number = 5
//num=num+1
number += 1
console.log(number);
比较运算符
// 比较运算符
// 1.== 等于 数值
// 2.=== 全等 数值+数据类型
// 3.!= 不等 数值
// 4. !== 不全等 数值+数据类型
console.log('' === 0);
逻辑运算符
// &&
// 进行且的运算
// 符号左边必须为true并且右边也是true, 才会返回true
// true && true 结果是true
// true && false 结果是false
// false && false 结果是false
// false && true 结果是false
//||
// 进行或的运算
// 符号左边为true或者右边为true, 都会返回true
//! 取反
// !! 真/假
var length = 0
console.log(!length);
console.log(length === 0);
var x = '1123'
console.log(!!x);
//短路 && 后面为假没机会执行
var z = ""
document.write(z || "这个家伙很懒,什么都没有留下")
自增自减运算符
++number 先加再保存
number++先保存再加
--number 先减再保存
number 先保存再减
三元运算符
- a > b ? c : d
// var age = 18
// age >= 18 ? alert('已经成年') : alert('没有成年')
switch 条件分支语句
语法:switch(code){ case 1:.. break; case 2:.. break; case 3:.. break; }
if 条件分支语句
语法:if(条件){}else{}
while 循环语句
while(条件){}
do while 循环语句
do{}while(条件) 先执行一次循环