HTML-JavaScript

严格区分大小写,每行内容后面要加分号(;)

1.引入外部js文件

<script src = "index.js"></script>

2.弹窗和打印

alert() 弹窗
console.log() 打印

3.载入页面后执行

<script>
	window.onload = function(){
	
	}
</script>

一个页面只能出现一次

4.获取标签

4.1独有标签

document.title = “标题”

document.body.innerHTML = “内容”
会解析标签

document.body.innerText= “内容”
不会解析标签,作为文本显示

4.2 其他标签

4.2.1定义变量

var和let

4.2.2获取标签

getElementById
getElementsByClassName
getElementsByTagName
querySelectorAll() 获取所有
querySelector() 获取第一个

let oBox = document.getElementById("box");
oBox.innerHTML = "888" ;

let aBox = document.getElementsByClassName("box");
aBox[0].innerHTML = "888" ;

let oI = document.querySelectorAll("#wrap i")

document是从整个页面获取,也可以换成其他变量

5.事件

5.1 事件

onclick
ondblclick
onmouseenter
onmouseleave
onresize

5.2 事件函数

oBox.onclick = funtion(){
oBox.innerHTML=“我被点击了”;
}

oBox.onclick = funtion(){
this.innerHTML=“我被点击了”;
}
对象相同时,可以用this代替

5.3 js操作标签属性

oA.target = “_self”;

5.4自定义标签属性

<a tz="lalala"> 自定义tz属性,属性值为lalala
获取oA.getAttribute(“tz”)
设置oA.setAttribute(“tz”,“hahaha”)
移除oA.removeAttribute(“tz”)

5.5 js操作样式

操作单条属性

oBox.style.width="300px"

操作多条属性,会把style覆盖

oBox.style.cssText= "width:300px;height:300px;"

操作复合属性时,横杆会被识别为减号,通过使用驼峰写法解决
或者通过中括号
oBox.style[“margin-left”]=“500px”;
中括号内可以传变量

6.数据类型

string  字符串
number  数字
boolean  布尔  true / false
undefined  未定义
null  空
object  对象
Symbol  字符

查看数据类型  typeof

7.定义变量

var   可以重复定义(将一个变量重复赋值)

let   不可以重复定义,
块级作用域,定义在{}内时,不能作用于全局

const 定义常量,不能改

可以先定义再赋值

var =a,b,c,d,e,f

8.操作符

8.1 算术运算符

+   加号两边有字符串时,代表拼接
-   尽量将字符串转为数字,转不了的转为NaN,NaN不是数字,属于数字类型

*

/

%

8.2 赋值运算符

var c,d

=
+=
-=
*=
/=
%=
++  c = 6,d=c++    c是7,d是6   先赋值;;c = 6,d=++c    c是7,d是7 先运算
--

8.3 比较运算符

>     大于
<     小于
>=    大于等于
<=    小于等于
==    等于
!=    不等于
!==   不全等
===   全等

8.4 逻辑运算符

&&  并

||  或

!  非

0是假,其他数字都为真
当逻辑运算符两边不一定是布尔值时,&&遇到假停止,||遇到真停止,!先转为布尔值再取反

9.流程控制

for(var i = 1 ; i<9 ; i++){
	console.log(i);
}

for (let i = 0; i < len; i++){
	ali[i].onclick = function(){
		alert(i);
	}
}


var i = 1;
while( i<9 ){
	console.log(i);
	i++;
}



 var i = 1;
 do{
   	console.log(i);
   	i++;
 }while( i<9);

break 中断循环
continue 跳出本次循环

10.if判断

强制转换为false的:0,false,"",null,undefined,NaN

if(true){
	alert("真");
}else{
	alert("假");
}

三目运算
“”?alert(“真”);alert(“假”);
a = 8>6?8:6

if—else if—else

11.switch判断

全等判断

var name = “hh”
switch(name){
case “lh”:
alert(name+“你好”);
break;
case “hh”:
alert(name+“haha”);
break;
default:
alert(name+“你是谁”);
break;
}

break阻止向下一个case运行

12.字符串

可读,不可写

length       长度

[]         下标

charCodeAt()    unicode码

Replace()      替换

split()       分割
var a=“aaaibbiccc”
a.split(“i”)

toUpperCase()    大写

toLowerCase()   小写

indexOf()      索引
a.indexOf(“i”)返回第一个i的位置,没有返回-1
a.indexOf(“i”,4) 从第3位往后开始找,返回找到第一个i的位置

substring()     截取
截取字符串,会比较参数值大小,小的在前,负数变为0

slice()       切割
不会交换位置,负数从右往左

toString()      转为字符串

13.数组

可读,可写

length       长度

[]         下标

push()       追加
a.push(“aaa”,“bbb”);

unshift()      前面加
a.unshift(“aaa”,“bbb”);

pop()        从后面删
shift()       从前面删

splice()

传一个参数a.splice(4),截取数组中前4个元素组成数组
传二个参数a.splice(1,2),删除2个,从第1位开始删
传三个参数a.splice(1,0,“aaa”) ,从第1位开始删,删0个,并插入“aaa”

sort()        从下到大排序,
当有负数是会发生错误所以用

a.sort(funtion(a,b){
	return b-a;
});

从小到大排序
reverse() 倒序

join()          拼接
a.join(" ")

14.数学方法

Number(a)     转为数字类型
parseInt(a)    转为数字,整数部分遇到不是数字就停
parseFloat()    转为数字,小数部分遇到不是数字就停
a.toFixed(2)    四舍五入保留2位小数

15.Math数学函数

Math.pow(16,2)     16的2次方
Math.round(5.5)     四舍五入取整
Math.ceil(0.2)      向上取整
Math.floor(0.9)      向下取整
Math.max(2,1,5,6,8)     取最大值
Math.min(1,2,3,4)      取最小值
Math.random()        [0,1)随机数
Math.random()*10+10     [10,20)的随机数
Math.PI            圆周率
Math.abs()          绝对值

16.Date方法

定义时间对象
var data = new Date();

16.1时间戳

var strap = data.getTime();
var strap = Date.now

16.2时间方法

data.getFullYear()
data.getMonth()+1

月份从0开始,需要加1

data.getDate()
data.getHours()
data.getMinutes()
data.getSeconds()
data.getDay()

17.定时器

setTimeout(function(){
	console.log(1);
},1000);

只执行1次

setInterval(function(){
    console.log(1);
},1000);

一直不停执行

定时器清除

var num = 5
timer =   setInterval(function(){
	num--;
    console.log(1);
    if(num === 0){
		clearInterval(timer);
		window.location.href="http://www.baidu.com";
	}
},1000);

18.函数

18.1定义函数

function funname(){}

直接定义函数,可以在定义前执行
通过var 的函数,只能在定义后执行

有名函数,函数名加括号立即执行函数

18.2事件调用

aDiv[0].onclick=fn;

有名函数做事件时,不能加括号

18.3函数表达式

+,-,~,!,() 可以将匿名函数变为函数表达式立即执行

18.4 参数

不定参arguments
sum(1,2,3,4,5,6,7,8,9,10);
function sum(){
console.log(arguments.length);
};
定义函数时,不设置形参,传入多个实参会存在arguments中,通过arguments[i]取得传入的参数

18.5函数返回值

函数默认返回undifined
return a; 返回a

18.6 函数作用域

js解析顺序
第一步:先解析var,function和参数,只进行定义,不解析赋值,所有定义的对象值都为undifined
第二步:从上到下执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值