[1,2,3,"he11o', true,false]
//创建一个数组
var arrl=[]
//创建一个有内容的数组
var arr2 = [1,2,3]
//创建一个空数组
var arr1 = new Array
//创建一个长度为10的数组
var arr2 = new Array (10)
//创建一个有内容的数组
var arr3 = new Array(1,2,3)
//length
var arr1=[1,2,3,4]
console.log(arr1,length)
arr1.lengt h= 0
var arr2 = ["xiaoming","jack","xiaohong"]
console.log(arr2[0],arr2[1],arr2[2])
//获取了前三个
var arr3=[3,4,4,5,8,6,8]
for( var i=0;i<arr3.length;i++){
console.log(arr3[i])
}
定义:
for( var m=0;m<arr.length-1;m++){
for( var i =0;i<arr.length-1-m;i++){
if(arr[i]>arr[i+1]){
var temp= arr[i]
arr [i]=arr[i+1]
arr[i+1]=temp
}
}
}
var min = 0
for(var m=0;m<arr.length;m++){
var min=m
for (var i =m+1;i<arr.length;i++ ){
if(arr[i]<arr[min]){
min=i
}
}
ver temp=arr[m]
arr[m]=arr[min]
arr[min]=temp
}
//创建一个数组
var arr = [1,2,3]
//我们想把数组变成只有1和 2
arr = [1,2]
var arr = [1,2,3]
//使用push方法追加一个元素在末尾
//返回值为数组的长度
arr.push(4)
console.log(arr)//[1,2,3,4]
var arr = [1,2,3]
//使用pop方法删除一个元素在末尾
//返回值为删除的元素
arr.pop()
console.log(arr)//[1,2]
var arr = [1,2,3]
//使用pop方法删除一个元素在末尾
//返回值为数组长度
arr.unshift("teichui")
console.log(arr)//["teichui",1,2,3]
var arr = [1,2,3]
//使用shift方法删除一个元素在前面
//返回值为删除的元素
arr.shift()
console.log(arr)//[2,3]
//splice 删除
//splice(从第几个下标开始,删除几个元素)
//返回值是要删掉的元素
var ressplice = arr.splice(1,1)
console.log(arr)
console.log("返回值",ressplice)
//splice 增加
//splice(从第几个下标开始,删除几个元素,后面跟上要加进去的元素)
var ressplice = arr.splice(1,0,3,4)
console.log(arr)
console.log("返回值",ressplice)
//reverse 倒序
var arr3 = [1,2,3,4]
arr3.reverse()
console.log(arr3)
//sort 接受一个回调函数
var arr4 = [11,55,88,22,33]
arr4.sort(function(a,b){
return a-b//从小到大排序
//return b-a 从大到小排序
})
var arr1 = [1,2,3]
var arr2 = [4,5,6]
var arr3=arr1.concat(arr2,7)//也可以在里面加上元素
console.log(arr1,arr2,arr3)
//arr3 即为拼接后的数组
var arr4=arr1.concat()
arr4.pop()
//不会改变arr1的值,这也可以成为一种赋值方式
var arr = [1,2,3,4,5]
document.write(arr.join("-"))//数字之间会通过-号连接在一起
//join("xx"),xx会加到数组每个元素之间
//slice 截取(不改变原数组)
var arr = ["aaa","ddd","fff","ggg"]
var arr2=arr.slice(0,2)
//slice(开始索引,结束索引)包前不包后(出现负数时表示从后面开始数)
//slice(一个值表示从此下标到最后)
//slice()无值表示截取全部的
var arr2 = arr.slice()
//也是一种赋值方式
var arr=["aaa","bbb","ccc","ddd"]
var res= arr.indexof("aaa")
//可以找到aaa所在数组位置的下标
//如果遇到重名的只会返回第一个遇到的元素下标
var res= arr.indexof("aaa",2)//第二个参数表示从第几个元素开始查
var arr=["aaa","bbb","ccc","ddd"]
var res= arr.lastIndexof("aaa")
var res= arr.lastIndexof("aaa",2)
//第二个参数表示从第n个元素往前找
var arr =["aaa","bbb","ccc","ddd"]
//回调函数
arr.forEach(function (item,index,arr){
console.loh(item,index,arr)
//第一个参数为每个元素的值,
//第二个参数为下标值,
//第三个参数为原数组
})
var arr=[1,2,3,4]
var arr2=arr.map(function(item){
return item*item//返回值返回到原数组中
//此式子为计算原数组平方
})
var arr =["aaa","vvv","ooo","aaas"]
var arr2 =arr.map(function(item){
return "" +item+""
})
documnet.write(arr2.join(""))
var arr =[
{
name:"aaa"
price:100
}
{
name:"bbb"
price:200
}
{
name:"ccc"
price:300
]
var arr2=arr.fileter(function(item){
return item.price>200//过滤出大于200的对象
})
var arr=[80,90,80,66,94]
var arr2=arr.every(function(item){
return item >=90//每一项都满足条件才会成为true否则为false
})
var arr=[80,90,80,66,94]
var arr2=arr.some(function(item){
return item >=90//只要有一个满足就返回true
var arr =[
{
name:"语文"
grade:90
}
{
name:"数学"
grade:90
}
{
name:"英语"
grade:100
}
]
var arr2=arr.find(function(item){
return item.grade ===100
var arr =[1,2,3,4,5]
var arr2=arr.reduce(function(prev,item){
return prev+item
//prev为上一次return的结果
//prev 0 item 1
//prev 1 item 2
//prev 3 item 3
})
var arr=[1,2,3,4,5,6,2,1]
var arr=[]
for (var i=0;i<arr.length;i++)
{
if(arr2.indexof(arr[i])===-1)//查看是否有过相同的元素
{
arr2.push(arr[i])
}
}
var arr=[1,2,3,4,5,6,2,1]
var obj={}
for (var i -0; i<arr.length;i++)
{
obj[arr[i]]="随便"
}
var aee2=[]
for (var i in obj)
{
arr2.push(Number(i))
}
var arr=[1,2,3,4,5,6,2,1]
var set1 = new Set(arr)
var arr1=Array.from(ast1)
//Array.from()可以将set结构转换为数组
var str = " he11o"
var str = new string( ' he11o ')
var str="hello"
console.log(str.lenght)//通过这种方式过去字符串长度 只读
console.log(str[1])//获取第几个下标的字符 只读
//遍历
for (var i=0;i<str.lenght;i++)
{
console.log(i,str[i])
}
var str="asdasdasdas"
var obj={}
for (var i= 0;i<str.lenght;i++)
{
console.log(str[i])
var key=str[i]
if(obj[key])
{
obj[key]++
}else{
obj[key]=1
}
}
var str = "asdsad"
var str1 =str.charAt(1)//将str中第一个字符传给str1
var str = "asdsad"
var str1 =str.charCodeAt(0)
var arr=[]
for(var i =65;i<91;i++)
{
arr.push(String.fromCharCode(i))
}
var str = "hello"
console.log(str.toUpperCase())
console.log(str.toLowerCase())
var str ="hello"
ver str1=str.substr(0,2)
//substr(开始索引的位置,长度)
var str ="hello"
ver str1=str.substring(0,2)
//substring(开始索引的位置,结束索引(不包含))
ver str3=str.substring(0)
//substring(从这个位置到结束)
var str ="hello"
ver str1=str.slice(0,2)
//slice(开始索引的位置,结束索引(不包含))
ver str2=str.slice(0)
//slice(从这个位置到结束)
//支持出现负数
var str ="abasdsads"
var str1=str.replace("a","*")
var str = "a,b,c,c"
var str1=str.split(",")
var str="abcda"
var str1=str.indexof("a")
var str1=str.indexof("a",2)//从第2个位置开始查
var str1=str.lastIndexof("a",2)//从后面开始查
var str = "abcd"
var str = str.concat("ef")
此方法与加号拼接没有区别
var str = " hello world "
var str1=str.trim()
var arr=["aaa","bbb","asd","swa","sdc"]
var input = prompt("请输入查询的内容")
var res =arr.filter(function(item){
return item.indexOf(input)>-1
})
console.log(res)
var ste = '{"name":"zhangsan","age":100}'
//内部必须是对象结构,不能有空格
var obj=JSON.parse(str)
//双引号不能省,逗号不能少
var obj1={"name":"zhangsan"}
var str =JSON.stringify(obj1)
//转换成JSON字符串
//在es6中可以通过使用``来使字符串可以换行
var myhtml = `
2
1
`
var name = "zhangsan"
var str = `my name is ${name}`
//通过在${}里面添加变量可以添加字符串,使其连在一起
//${}内部的区域相当于js的区域
var arr=[1,2,3,4]
var arr2=arr.map(function(item){
return item*item//返回值返回到原数组中
//此式子为计算原数组平方
})
var arr =["aaa","vvv","ooo","aaas"]
var arr2 =arr.map(function(item){
return `${item}`
})
documnet.write(arr2.join(""))
//map案例的改编
var price =123.456
console.log(price.toFixed(2))
//括号内部表示保留几位小数
//如果数位不够则会自动补零
//返回是字符串类型
console.log(Math.random())
console.log(Math.round())
console.log(Math.cell())
console.log(Math.abs())
console.log(Math.sqrt())
console.log(Math.pow())
console.log(Math. max())
console.log(Math. min())
console.log(Math. PI)
ver res =Math.floor(Math.random()*10)
ver res =Math.floor(Math.random()*11)
ver res =Math.floor(Math.random()*10)+10
ver res =Math.floor(Math.random()*11)+10
//函数--min-max 不包含
function getRnd(min,max){
if(min>max){
console.error("参数有误")
}
return Math.floor(Math.random()*(max-min))+min
}
//函数--min-max 包含
function getRnd(min,max){
if(min>max){
console.error("参数有误")
}
return Math.floor(Math.random()*(max-min+1))+min
}
var time = new Date()
console.log(time)//当前时间 Fri Mar 01 2019 13:11:23GMT+0800(中国标准时间)
//传递字符串
var time = new Date( " 2019-03-03 13:11:11")
var time = new Date( " 2019/03/03 13:11:11")
console.1og(time)// sun Mar 03 2019 13:11:11 GMT+0800(中国标准时间)
new Date()传递的参数有多种情况
var time = new Date(2019,00)//月份从О开始计数,О表示 1月,11表示12月
console.log(time)// Tue Jan 01 2019 00:00:00 GMT+0800(中国标准时间)
var time = new Date(2019,00 ,1)
var time = new Date(1000)
//日期默认是从1970年1月1日开始计算
var date = new Date()
console.log(date.getFullYear())
//从0开始计算
var date = new Date()
console.log(date.getMonth())
var date = new Date()
console.log(date.getDate())
var date = new Date()
console.log(date.getDay())
var date = new Date()
console.log(date.getHours())
var date = new Date()
console.log(date.getMinutes())
var date = new Date()
console.log(date.getSeconds())
var date = new Date()
console.log(date.getMilliseconds())
var date = new Date()
console.log(date.getTime())
倒计时多少时间以后执行函数
语法:setTimeout(要执行的函数,多长时间以后执行)
会在你设定的时间以后,执行函数
var timerId = setTimeout(function()
{console.1og('我执行了')
},1000)
console.log(timerId)//1
一定的间隔时间后以后执行函数
语法:setInterval(要执行的函数,多长时间间隔以后执行)
var timerId = setInterval(function()
{console.log( new Date())
},1000)
console.log(timerId)//1
清除时间计时器
<buttom id=btn1></buttom>
var time1 = setInterval(function()
{console.1og( new Date())
},1000)
console.log(time1)//1
btn1.onlick=function(){
console.log("btn1 click")
clearInterval(time1)
}
<div id="box"></div>
var targetDate= new Date("2022/6/18")
function diffTime(current,targrt){
var sub = Math.cell((target-current)/1000)
//先得到秒数
var day=parseInt(sub/(60*60*24))
var hours=parseInt(sub%(60*60*24)/(60*60))
var minutes=parseInt(sub%(60*60)/60)
var seconds=sub%60
//将值返回给对象
var obj = {
day:day,
hours:hours,
minutes:minutes,
seconds:seconds
}
return obj
}
setInterval(fuction(){
var currentDate = new Date()
var res =diffTime(currentDate,targetDate)
document.write(`京东618-${res.day}天${res.hours}时${res.minutes}分${res.seconds}秒`
document.write("
"))
box.innerHTML=`京东618-${res.day}天${res.hours}时${res.minutes}分${res.seconds}秒`
},1000)
var windowHeight = window.innerHeight
console.log(windowHeight)
var windowwidth =window.innerwidth
console.log(windowwidth)
<buttom id="btn"></buttom>
btn.onclick=function(){
alert("错误")
}
<buttom id="btn"></buttom>
btn.onclick=function(){
var res = confirm("你确定要删除吗")
console.log(res)//点击确定返回true点击取消返回false
if(res){}//可以通过点击的按钮进行分支
else{}
}
<buttom id="btn"></buttom>
btn.onclick=function(){
var res=prompt("请输入你的用户名")
}
location.href
console.log(window.location.href)
window.location.href = './index.htm1'
//这个就会跳转页面到后面你给的那个地址
<buttom id btn>刷新</buttom>
btn.onlick=function(){
loaction.reload()
}
window.on1oad = function (){
console.log('页面已经加载完毕")
}
window.onresize= function(){
console.log("resize")
}
window.onscroll= function(){
console.log("scroll")
//可以判断滚动的距离来使相应的代码发生作用
//console.log(document.documnetElement.scrollTop)
//console.log(document.body.scrollTop)某些低版本浏览器不支持上面那个
window.onscroll=function(){
console.log(console.log(document.documnetElement.scrollTop||document.body.scrollTop)
)
}
window.onscroll=function(){
console.log(console.log(document.documnetElement.scrollLeft||document.body.scrollLeft)
}
<buttom id="btn">回到顶部</buttom>
window.onscroll=function(){
console.log(console.log(document.documentElement.scrollTop||document.body.scrollTop))
if((document.documentElement.scrollTop||document.body.scrollTop)>100){
console.log("显示回到顶部按钮")
}else{
console.log("隐藏回到顶部按钮")
}
}
btn.onclick=function(){
window.scrollTo(0,0)
//1.两个数字,前者表示x轴,后者表示y轴
}
btn.onclick=function(){
window.scrollTo({
left:0,
top:0
})
}
<buttom id="btn"> click</buttom>
btn.onclick=function(){
window.open("链接地址")
}
<buttom id="btn"> click</buttom>
btn.onclick=function(){
window.close()
}
history.back
window.history.back()
history.forword
window.history.forward()
前提是你要之前有过回退操作,不然的话你现在就是最后一个页面,没有下一个
history.go()里面填数字可以使网页回到第N个页面
//增 只能存字符串,不能存对象
loca1Storage.setItem("name" , "kerwin")
//取
1oca1Storage.getItem("name")
//删
1oca1Storage.removeItem("name")
//清空
1oca1Storage.clear()
//增
sessionStorage.setItem("name" , "kerwin")
//取
sessionStorage. getItem("name")
//删
sessionStorage. removeItem( "name")
//清空
sessionStorage.clear()
<div>
用户名:
<input type ="text" id = "username"
</div>
<div>
密码:
<input type = "password" id = "password">
</div>
<div>
<button id ="login">登录</button>
</div>
<script>
//先获取用户名 密码信息进行存储
var uservable= localStorage.getItem("username")
var passvable= localStorage.getItem("password")
username.vable = uservable
passvable.vable =passvable
login.onclick=function(){
console.log(username.vable)
localStorage.setItem("username",username.vable)
localStorage.setItem("password",username.vable)
}
</script>