js的介绍
js是什么
js是一门脚本语言 解释性语言 动态类型语言 基于对象语言
编译语言:需要把代码翻译成计算机所认知的二进制语言,才能够执行
脚本语言:不需要编译,直接执行
常见的脚本语言:t-sql,cmd
js的作用
解决用户和浏览器之间的交互问题
代码的写法
- js的代码可以分三个地方写:
- 1.在html的文件中,script的标签中写js代码
- 2.js代码可以在html的标签中写—
<input type="button" value="按钮" onclick="alert('被点了');"/>
- 3.在js文件中可以写js代码,但是需要在html的页面中引入 script的标签中的src=“js的路径”
声明一个对象 var obj = new Object()
格式化快捷键 webstrom
Ctrl+Alt+L----->格式化代码的(设置代码有很好的格式,代码是错误的,这个快捷键是没有效果)
获取变量的类型
如果一个变量结果是undefined 和一个数字进行运算那么结果就是NAN 不是一个数字类型
八进制 0开头
十六进制 0x开头
Number
//数字类型有范围: 最小值和最大值
// console.log(Number.MAX_VALUE);//数字的最大值
// console.log(Number.MIN_VALUE);//数字的最小值
固定的
不要用小数验证小数 有bug
//不要用小数去验证小数.
// var x=0.1;
// var y=0.2;
// var sum=x+y;
// console.log(sum==0.3);
//不要用NaN验证是不是NaN
// var num;
// console.log(num+10==NaN);
// console.log("您好"=="我好");
验证是否是NAN
isNaN(变量)
string类型
str.length 获取字符串的长度
html中的转义符
html中的转义符: < < > > 空格:
js中的字符串里也有转义符
tab键----水平制表符
console.log(“哈哈\t嘎嘎”); 输出结果可以看出水平制表符
转义符 \
字符串的拼接
######加号
使用加号 str1+str2
只要有一个是字符串 他们也是拼接 不是计算
######减号 乘号 都会计算
如果有一个是字符串,另一个不是字符串,使用-号,则此时会发生计算
leg 隐式转换
var str1 = "10";
var str2 = 5;
console.log(str1 - str2);
此时结果是 5
布尔类型和undefined及null
布尔类型
true 或者 false
类型转换
其他类型转数字类型 3种
- parseInt()转整数 只要字符串最前面有数字就可以转换成功 转换为整数
“10sss” 成功 “j55” 不成功 NaN - parseFloat 转小数 规则和上面那个差不多 有小数还是转换为小数 整数还是整数
- Number 转数字 只有字符串里面全是数字 才可以转换成功 更严格
其他类型转字符串类型 两种
.toString()
var num=10;
console.log(num.toString());//字符串类型
这样就变成了字符串
String
var num1 = 20;
console.log(String(num1));
两者的区别 与用法
如果变量没有意义 则使用 String
如果变量有意义,则使用toString
没有意义指 比如 未定义 或者null
leg
// var num2;
// console.log(num2.toString());
// var num3=null;
// console.log(num3.toString());
这个报错
// var num2;
// console.log(String(num2));
// var num3=null;
// console.log(String(num3));
这个成功
其他类型换布尔类型 Boolean
0 undefined null ”“ 这些转换为 fasle ”“这个是空字符串
其他的非空字符串 为true
运算符
操作符
用来计算的
######包括
算数运算符: + - * / %
* 算数运算表达式:由算数运算符连接起来的表达式
* 一元运算符: 这个操作符只需要一个操作数就可以运算的符号 ++ --
* 二元运算符: 这个操作符需要两个操作数就可以运算,
* 三元运算符: -----不讲,明天讲
* 复合运算符: += -= *= /= %=
* 复合运算表达式:由复合运算符连接起来的表达式
关系运算符: > < >= <= ==不严格的 ===严格的 !=不严格的不等 !==严格的不等
关系运算符的结果是布尔类型
&&---逻辑与--并且
* ||---逻辑或---或者
* !---逻辑非---取反--取非
var 变量名字=值;---->字面量的方式赋值