如何使用js:
使用方式:
1、 直接在HTML上写一个script标签,在里面书写js代码--<script>js的代码</script>
2、创建一个xx.js文件,在其中写入js代码,最后在HTML引入一正式开发使用方式--<script src="js的路径">此处不写代码</script>
输出方式/打桩输出/检查错误:
1、在控制台打印输出日志,console.log(你想要输出的东西);//console 控制台 log 日志
2、在页面上输出日志:document.write(你想要输出的东西);//document 文档(当前的HTML文档) write 写入.支持标签,但有一个缺点:平时使用无所谓,但如果绑定了一个点击事件,会将页面所有的内容去全部替换掉,导致网页白写。
3、在浏览器自带的警告框输出日志:alert(你想要输出大的东西)
var 变量名=值.
特殊:
变量名其实不是随意的
1、不能以数字开头
2、建议使用驼峰命名法或者下划线命名法
3、命名要尽量的见名知意
如果你的变量名是name,不管你保存的数据类型是什么,都会转为一个字符串.name这个变量名是一个关键字。
变量名不能是关键字
变量可以只创建,不赋值,默认值为undefined,但不使用
运算符
1、算术运算符:+ - * / %
特殊:
1、%:取余,俗称模,两个数相除,不取商而是取除不尽的余数
作用:
1、任意数%2 - 判断奇偶数
2、取出某个数字的后n位
console.log(1234%10);//4
console.log(1234%100);//34
console.log(1234%1000);///234
2、带有隐式转换;会将数据类型转换,发生变化;默认将左右两边转为数字,再运算
true -> 1
false -> 0
undefined -> NaN
null -> 0
"100" -> 100
"100px" -> NaN 确实可以将字符串转为数字,但必须是纯数字组成的字符串才行,凡包含了非数字字符,则为NaN
NaN:Not a Number;不是一个数字,但是他确实是数字类型,不是一个有效数字,没有任何优点,但有两个缺点:1、参与任何算术运算结果认为NaN
2、参与任何比较运算结果都为false
+运算符:如果碰上一个字符串,左右两边都会转为字符串,+运算不要再是+运算,而是拼接工作
2、关系/比较运算符:> < >= <= == === != !==
何时使用:一般出现在分支结构中,通过条件判断满足不满足,走不同的路线
结果:一定是一个布尔值
带有隐式转换:默认左右两边都会转为数字再比较大小
特殊:
1、如果参与比较的两边[都是]一个字符串,则会按位pk,每个字符的十六进制unicode号(十进制ASCII码)
数字0-9<大写A-Z<小写a-z<汉字
常识:汉字第一个字:一 unicode号:4e00 ascii码:19968
汉字最后一个字:龥 unicode号:9fa2 ascii码:40869
2、NaN参与比较运算结果都为false
判断一个x是不是NaN
!isNaN(X) 结果一定是一个布尔值:
true -> 是一个有效数字
false -> 是一个NaN
3、undefined==null;//true
解决:===全等:不带隐式转换的值等值比较,要求数据相同,值也相同
3、逻辑运算符:在比较运算的基础上,再进行综合比较,一个条件比较不出来,可以考虑综合比较
&&:与(并且)
全部条件满足,结果才为true,只要一个条件不满足,结果为false
||或者
全部条件不满足才为false,只要满足一个,结果为true
!颠倒布尔值
!true -> false
!false -> true
4、赋值运算符:= += -= *= /= %=
1、赋值符号为 =,将=右边的东西保存到=左边的变量名中
2、后5个可以理解为是一种升级写法,一句话两个操作,运算后再保存回变量本身
i=i+1==>i+=1
5、自增自减运算符:++ --
举例:i++===i+=1===i=i+1
自增:固定的每次只能+1
累加:+=每次加几由程序员自己决定
前++和后++的区别
1、如果独自使用,前++和后++没有任何区别
2、如果参与了其他表达式,变量始终都会+1,但前++和后++[返回的结果]不同
前++返回的是加了之后的新值
后++返回的是加了之前的旧值