JS三种引入方式
<!-- 第三种:外部引入 -->
<!-- ./是平级 也可以不写 但是最好写 因为后面会出问题 -->
<script src="js/1.js"></script>
<!-- 第二种:内部JS最好的写在body后面 -->
<script type="text/javascript">
// alert('我一开始就出来了')
a.onclick = function() {
alert(1);
}
</script>
</head>
<body>
JS的引入方式3种
<!--
1. 行内js 一般不使用
2. 内部js 一般放在Body后面
3. 外部js
-->
<!-- 自动换行:Alt+z -->
注释多行:Alt+shift+a
<!--第一种:内嵌 -->
<div id="a" style="width: 300px; height: 300px; background: red οnclick=alert"('我被点击了')"></div>
Js输出三种方式
//第一种输出方式: alert 弹窗
alert(1); 数字
alert('js真简单'); 字符串
// 第二种输出方式:console.log(); 控制台输出 测试用的
console.log(1); 数字 输出字体是蓝色
console.log('1'); 字符串输出字体是黑色
console.log('js真简单'); 字符串
// 第三种页面输出 document.write();
document.write('div')
document.write('<div style="color:red;">哈哈哈 我是js创建的</div>');
变量
//变量:存储内容的容器,变量在代码的执行过程中可以改变内容
// 等号是赋值操作
var x ='<div style="color:red;">哈哈哈 我是js创建的</div>';
// 变量输出不能加引号
document.write(x);
// 为什么都可以输出 而且是先执行上面 后执行下面的 因为代码有执行顺序
// 变量名是可以改变的
var x = 1;
document.write(x);
**JS变量名到规则**
变量名的规则:
1.数字 字母 下划线及$组成
2.不能数字开头
3.驼峰命名法
4.可以使用拼音 但是不要使用拼音简写
5. 见名知意
6.不能使用关键字 和保留字(现在没有用,但是将来可能会有用)
// JS很恶心的点 就是中文没报错 只是显示undifined
var 中文;
console.log(中文);
声明变量的四种常见类型
// 第一种:先声明 后赋值
var a ;
a=1;
// 第二种:声明并赋值
var b = 1;
// 3 不使用var声明,直接使用 --- 不推荐使用
c = 'hello';
console.log(c);
// 第四种:同时声明多个变量,中间用逗号隔开
var d=4,e=5;
console.log(d,e);
JS基本数据类型与引用数据类型
基本的数据类型(存储在栈中):
number(数字)
string(字符串)
boolean(布尔值):true/false
undefined(声明未赋值)
null(就让它为空的)
NaN (不是数据类型的一种 只是number的一种)
注意:js里面的数据类型是赋值之后才能知道的
// 引用数据类型(堆) 复杂数据类型一般存在堆里:object array function
var arr=[1,23,null,5,'hi']; //数组 array
var fn = function() {
alert(1);
}
var obj = {
'name' : '老王'
}
// object Array 关系
// 数组的数据类型是object array也是Object的一种
// 数据类型:
// 1.基本的数据类型(存储在栈中) Number String Boolean undefined null
// 2.引用数据类型(堆) array function object
JS中使用typeof判断数据类型
var a = 1;
var b = '1';
// 判断数据类型
console.log(typeof a);
console.log(typeof null); //object null所属的数据类型实际上是一个空对象
var arr = [1,2];
数据类型的转换
// 数字转字符串 要么得到纯数字,要么是NaN
var a = 1;
var b = String(a); //String要大写
console.log(typeof b);
// 布尔转字符串
// 其他类型转字符串 就是加了引号
var bool = true;
var d = String(bool);
console.log(d);
//
var aa = "nijao";
var bb = Number(aa);
console.log(bb); //NaN
console.log(typeof bb); //判断bb的属性 数据类型还是一个Number
// 其他类型转为布尔类型时,有5种false(0、空字符串、null、undefined、NaN)
(字符串里面打了空格不是空字符串!)之外,都是true
// boolean值只有true和false两个
特殊数据类型的转换
// null 转化为数字 结果是0
var a = null;
var b = Number(a);
console.log(b); //0
// undefined转换为数字得到的是NaN
// null undefined转化为布尔值都是false
Math对象
<script>
var a = 5.6;
// 这里的加号不是求和 ,而是做字符串拼接
document.write(a+'四舍五入的结果是'+ Math.round(a) +'<br>');
document.write('<br>')
console.log(Math.round(a)); //round四舍五入 6
console.log(Math.ceil(a)) ; //向上取整 天花板 6
console.log(Math.floor(a)); //向下取整 5
</script>
<script>
// 随机数
var num = Math.random() * 100; //random产生0-1之间的随机数 包含0 不包含1 [0,1)前闭后开
console.log(num);
var res = Math.round(num); //round 四舍五入
console.log(res);
</script>