JS简介,运算符

250 阅读2分钟

一、JavaScript概述:简称JS,是运行在客户端浏览器端的 解释型 弱类型 面向对象脚本语言

解释型:直接运行碰到错误就停止

弱类型:由数据决定了数据的类型

二、如何使用JS

1、使用方式:
        1、内部写法:
            <script>JS代码</script>	
    
        2、外部引入:
            创建xx.js,在其中写入你的JS代码,在HTML进行引入:<script src="js路径"></script>
    
2、输出的方式:
	1、在控制台输出:console.log();
	2、在页面上输出:document.write();
                    支持标签,但是在某的情况下会将页面原有的内容全部替换掉
	3、在警告框输出:alert();
                    有时候会卡住页面,用户只能看到白板
            
            
3、变量(可变化)和常量(创建后不允许修改)
	var 变量名=值;
	const 常量名=值;
	
4、数据类型:
	1、原始/基本/值类型:NumberStringBooleanUndefinedNull

	2、引用/对象类型
5、运算符:
1、算术运算:+ - * / %
		特殊:
			1、%取余	最后取值为余数,例:10%3,最后的值为1
			2、隐式转换:默认转为数字在运算
				true->1
				false->0
				undefined->NaN
				null->0
				"100"->100
				"10x0"->NaN
                    NaN:是一个数字,但是不在有效范围内,不知道他到底是多少,带来了2个缺点:
					1、参与任何算术运算,结果仍为NaN
					2、参与任何比较运算,结果都为false
			3、+运算,碰到上一个字符串,两边都会转为字符串,变为拼接操作
2、比较/关系运算:>,<,>=,<=,==,!=,===,!==
		隐式转换:默认转为数字在比较
		特殊:
			1、左右两边都是字符串,则按位PK每个字符的unicode号(ascii码)
				 0-9<A-Z<a-z<汉字

			2NaN参与任何比较运算,结果都为false,那么我们怎么来判断xxx是不是NaN
				!isNaN(100);->此方法也具有数字的隐式转换,只要能够被隐式转换为数字,都可以直接放进去
                                        true->说明是一个有效数字
                                        false->说明是一个NaN

			3undefined==null结果为true,怎么解决?
				使用:undefined===null;
                                            全等:不带有隐式转换的等值比较,要求不光数据类型要相同,数值也要相同
3、逻辑运算:综合比较,一个条件可能搞不定
		&&:全部条件都满足,最后就满足
		         只要一个条件不满足,最后就不满足

		||:全部条件都不满足,最后不满足
		         只要一个条件满足,最后就满足

		!:颠倒布尔值
4、赋值运算:= += -= *= /= %=,一句话完成两个操作,先运算再赋值
		i+=1;//i=i+1
5、自增和自减:++ --
		i++//i+=1;//i=i+1

			前++和后++的区别?
                                单独使用没有区别
                                但是如果参与了别的表达式,返回的结果不一样
                                        前++返回的是新值
                                        后++返回的是旧值
6、左移:m<<n,读作m左移了n位,翻译:m*2的n次方
		右移:m>>n,读作m右移了n位,翻译:m/2的n次方
		缺点:底数只能是2,不可以修改
		

用户输入框:

var user=prompt("提示文字")