<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--script 标签内,写JavaScript代码-->
<!-- <script>-->
<!-- alert('hello,world');-->
<!-- </script>-->
<!-- 外部引入
注意 :JavaScript必须成对出现-->
<script src="js/qj.js"></script>
<!--不用显示定义type 也默认是JavaScript-->
<!-- <script type="text/javascript">-->
<!-- </script>-->
</head>
<body>
<!--这里也可以存放-->
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
<!-- JavaScript 严格区分大小写 -->
/* 定义变量 变量类型 变量名 = 变量值 */
var num = 1;
// alert(num);
/* 条件控制 */
if (2>1){
alert("ture");
}
// console.log(num) 在浏览器控制台打印变量 sout(system。out。prinln)
</script>
</head>
<body>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
console.log(1/3===(1-2/3));
console.log(Math.abs(1/3-(1-2/3))<0.000001)
var aaa = [1,2,3,'aaa',null,true]
new Array(1,2,3,'222')
//Person person = new Person(1,2,3)
var person = {
name: "aa",
age: 11,
BB: ['aa']
}
</script>
</head>
<body>
</body>
</html>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CEEn1tqM-1615128959964)(C:\Users\asus\AppData\Roaming\Typora\typora-user-images\image-20210306160117537.png)]
严格检查模式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- idea需要支持es6语法
'use strict';严格检查模式,预防js的随意性导致的一些问题
必须写在js的第一行-->
<script>
'use strict';
// 全局变量
let i = 1;
// ES6 let
</script>
</head>
<body>
</body>
</html>
i=1
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-luVMW4d9-1615128959970)(C:\Users\asus\AppData\Roaming\Typora\typora-user-images\image-20210307134424785.png)]
数据类型
字符串
正常字符使用 ‘’ “”
注意转义字符 : ’
\' 字符串
\n 换行
\t table
\u4e2d \u#### unicode 字符
\x41 "\x41"ascll字符
多行字符串编写
//tab 上面 esc键下面
var msg =
'hell' +
'word' +
'你好'
模拟字符串
let name = `zp`;
let age = 20;
let aaa = `你好,${name}`
console.log(aaa)
字符串长度
console.log(str.length)
字符串不可变
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-itBGGmN6-1615128959972)(C:\Users\asus\AppData\Roaming\Typora\typora-user-images\image-20210307150955942.png)]
student.toLocaleUpperCase() 注意这里是方法
“STUDENT”
console.log(student.indexOf(`s`)) (是哪个位置的)
VM454:1 0
`console.log(student.substring(1,3)) ([))
VM511:1 tu
console.log(student.substring(1))从第一个到最后一个
VM511:1 tudent
数组
array 可以包括任意的数据类型
长度 arr.length 注意 数组大小会发生变化 赋值过小会丢失
indexof ,通过元素获得下标索引
字符串的“1” 和数字1是不同的
slice() 截取array的一部分 ,返回一个新数组
push,pop 尾部
unshift, shift 头部
sort 排序
reverse 翻转
concat() 拼接 并没有修改数组,只是会返回一个新数组
连接符 join 打印拼接数组,使用特定字符串连接
多维数组
console.log(arr)
VM63:1 (6) [1, 2, 3, 4, 5, 6]
undefined
arr[0]
1
arr.length=10
10
console.log(arr)
VM186:1 (10) [1, 2, 3, 4, 5, 6, empty × 4]
undefined
arr.length=2
2
console.log(arr)
VM206:1 (2) [1, 2]
undefined
arr.indexOf(1)
0
arr.length=10
10
arr.slice(3)
(7) [empty × 7]
arr.length=6
6
arr.slice(3)
(3) [empty × 3]
arr.slice(1,3)
(2) [2, empty]
arr.pop(1)
undefined
arr.push("aa")
6
console.log(arr)
VM683:1 (6) [1, 2, empty × 3, "aa"]
undefined
arr.shift(11)
1
arr.unshift(11)
6
arr
(6) [11, 2, empty × 3, "aa"]
arr.sort
ƒ sort() { [native code] }
arr.concat([1,2,3])
(9) [11, 2, empty × 3, "aa", 1, 2, 3]
console.log(arr)
VM901:1 (6) [11, 2, empty × 3, "aa"]
undefined
arr.join("-")
"11-2----aa"
arr = [[1,2],[3,4],[5,6]]
arr[1,1]
(2) [3, 4]
数组 存储数据 存取查询都可以自己实现
对象
若干个键对
var 对象名 = {
属性名:属性值,
属性名:属性值,
属性名:属性值
}
var aa={
a: 1,
b: 2,
c: 3,
}
js 中对象 ,{…}表示一个对象, 键值对属性 xxx:xxx ,。。
js中所有的键都是字符串,都是任意对象!
使用一个不存再的对象属性,不会报错!undefined
aa.d
undefined
动态的删减属性,delete 删除对象属性
添加直接给新的属性值添加值即可
delete aa.a
true
aa.a=1
1
判断属性值是否再这个对象中 xxx in xxx
1 in aa
false
a in aa
VM231:1 Uncaught ReferenceError: a is not defined
at <anonymous>:1:1
(anonymous) @ VM231:1
"a" in aa
true
判断一个属性是否是这个对象自身拥有的
aa.hasOwnProperty("a")
true
流程控制
if循环
var age = 3;
if(age>3) {
//第一个判断
alert("aa");
}else if (age<5){
alert("bb");
}else{
// 否则
alert("cc");
}
for 循环
for (let i=0 ;i< 100;i ++){ console.log(i)}
while 循环 避免死循环
var age =0;
while(age<100){
age = age +1;
console.log(age)
}
do {
age=age +1;
console.log(age)
}while (age<100)
死循环
while(true){
alert("我爱你,豆豆")
}
foreach循环
var age =[12,3,12,3,12,3,12,3,12,3]
// age.forEach(function (value) {
// console.log(value)
// })
for in
var age =[12,3,12,3,12,3,12,3,12,3]
// age.forEach(function (value) {
// console.log(value)
// })
for (var num in age){
if(age.hasOwnProperty(num)){
console.log("存在")
console.log(age[num])
}
}