1.简单的输出语句
alert('hello,world') //输出语句
2.简单的打印语句
console.log(score) 在浏览器的控制台打印变量
3.大小写转换(方法)
/*方法*/
let student = 'student'
console.log(student.toLocaleUpperCase()) /*大写*/
console.log(student.toLocaleLowerCase()) /*小写*/
4.获取该元素下标
student.indexOf('t')
5.截取字符串,左闭右开
student.substring(1,4)
6.取值赋值
'use strict'
var arr=[1,2,3,4]
console.log(arr[0])
arr[0] = 9
console.log(arr[0])
第一个结果位1,第二个结果位9。可以看出数组通过下表取值和赋值。
7.数组长度可变
通过arr.length给数组赋予长度,长度太小,会出现元素丢失的现象。
arr.length=10
console.log(arr)
arr.length=2
console.log(arr)
8.方法——下标值索引
let arr1=[1,2,3,4,"1"]
console.log(arr1.indexOf(1))
console.log(arr1.indexOf("1"))
这里的两个1是不一样的,数字1 和 字符串1
9.方法——字符串截取
let arr1=[1,2,3,4,"1"]
console.log(arr1.indexOf(1))
console.log(arr1.indexOf("1"))
console.log(arr1.slice(1,3))
同样的可以确定截取范围(左闭右开),我们还可以在括号里写一个数字,表示从这个开始一直到最后。
10.方法——末尾加入,末尾弹出
arr2.push(11,'a')
console.log(arr2)
arr2.pop()
push会在数组后面紧接着加入数据,
pop是从数组末尾弹出一个元素
11.方法——头部加入,头部弹出
let arr3=[1,2,3,4,5,6]
console.log(arr3.unshift(999))
console.log(arr3.shift())
.unshift 从头部加入元素
shift 从头部弹出元素
12.方法——排序和反序
let arr4=[5,4,9,1]
arr4.sort()
console.log(arr4)
arr4.reverse()
console.log(arr4)
sort 排序从小大大
reverse 反序,所有元素反转
13.方法——数组拼接
let arr1=[1,2,3]
let arr2=[4,5,6]
let arr3=arr1.concat(arr2)
console.log(arr3)
注意数组的拼接返回的是一个新的数组,原来的数组还是存在的。
14.方法——连接符,使用特定的字符串链接。
let arr4=[1,2,3]
let arr5=arr4.join('-')
alert(arr5)
这里的方法返回的仍是一个新的数组,原来的数组仍然是存在的。
15.函数类型比较
typeof x!== "number"如果x不是一个数字
15.1.arguments和rest
代表,传递进来的所有参数是一个数组。
获取已经定义了的参数之外的所有函数。只能写在最后面。
function aaa(1,2,3,...rest)
16.全局变量windows
windows.
17.jQuery
降低代码重复性
18.重要:let
定义尽量使用let解决局部作用域的冲突。
19.常量const
20.方法this,apply
let wang = {
name:'小王',
birth:2002,
age:function () {
var now=new Date().getFullYear() //获取当前年份
return now-this.birth; //引用自己的变量
}
}
console.log(wang.age())
//属性
wang.name
//方法
wang.age()
this代表?,拆开上面的代码。
function getAge() {
let now = new Date().getFullYear()
return now - this.birth;
}
let wang = {
name:'小王',
birth:2002,
age:getAge
}
console.log(wang.age())
wang.age ok
getAge() NaN windows,用到了this
this是无法指向的,默认指向调用它的那个对象。
apply,在js中可以控制this指向的对象
function getAge() {
let now = new Date().getFullYear()
return now - this.birth;
}
let wang = {
name:'小王',
birth:2002,
age:getAge
}
console.log(wang.age())
getAge.apply(wang,[])
21.内部对象date,JOSN
21.1.标准对象
typeof 12
'number'
typeof '123'
'string'
typeof true
'boolean'
typeof NaN
'number'
typeof []
'object'
typeof {}
'object'
typeof Math.abs
'function'
typeof undefined
'undefined'
21.2.Date
let now = new Date() //Wed Oct 12 2022 18:21:40 GMT+0800 (中国标准时间)
now.getFullYear(); //年
now.getMonth(); //0-11表示月
now.getDate() //日
now.getDay() //星期
now.getHours(); //时
now.getMinutes(); //分
now.getSeconds() //秒
now.getTime() //时间戳 全国统一从1970 1.1 0:00:00开始到现在的
console.log(new Date(1665570483418)) //时间戳转时间
21.3.JOSN
1.可以提升数据传输效率。
2.在js里面的一切皆为对象,任何js支持类型都可以用JSON表示
格式:
对象{}
数组[]
所有键值对 都是 key:value
21.4.JSON字符串和对象的转化。
let wang={
name:'王',
age:20,
sex:"男"
}
console.log(wang)
//把对象转化为JSon字符串
let JSON_ = JSON.stringify(wang) //{"name":"王","age":20,"sex":"男"}
console.log(JSON_)
//把JSON字符串转化为对象
let JSON_1 = JSON.parse(JSON_)
console.log(JSON_1)
21.5.JSON字符串和对象的区别
let obj ={name: "王",age: 20,sex: "男"}
let JSON='{"name":"王","age":20,"sex":"男"}'
21.6.Ajax
- 原生的js写法 xhr异步请求
- jQuery 封装好的方法 $(“#name”).ajax(“”)
- axios请求