js笔记

JS,其实就是一种网页的脚本语言。可以控制浏览器,网页的行为。
所以又称之为“动词”;

JS 是一种基于客户端,网页的脚本.JS是一门弱语言。

又由于JS是基于客户的脚本语言。因此它所有的代码不可避免的可以被外界查看。
所以基于两个方面考虑:
1、JS的安全问题。(压缩、混淆代码等)
2、访问速度的问题。 (压缩,加入CDN)

JS基础跟所有的语言一样。都有逻辑判断,循环语句,条件判断,运算符。
只不过JS的运算符+,在跟字符串操作的时候,就会起到连接的作用。
原生的JS,简单但是使用起来较复杂。

JS标识:
1、JS需要在HTML代码中用Script标识的。
2、标准的Script需要加入type属性。type="text/javascript"
3、script的位置根据特定的情况而定。

JS输出:
1、alert( 输出内容 );//警告框
2、console.log( 输出内容 ); //一般用于控制台输出。
注意:一般集合类型,建议都是控制台输出

JS注释:
// 单行
/* */ 多行

JS变量:
所有的变量可以用var声明。

JS运算符:
- + * / % 都可以使用。
1、但是+在运算的时候如果与字符串在一起运算,那么起到的就是连接符的作用。
2、注意:包括字符串在内所有的运算符会遵守优先级。

注意:parseInt("10"); 为强制转化成整型。
parseFloat("10");为强制转化为浮点型。
typeof(10+"");typeof为显示数据类型。

JS三大弹出框:
1、alert 警告框
2、confirm 确认框。返回的是布尔类型
if( confirm("确认要关闭吗?") ){
window.close();
}
3、prompt 输入框 (标题输入框,默认值)
var a = prompt("请输入你喜欢的动物","猪");
alert( a );

JS数组:
1、定义一个数组:
var arr = new Array();
var arr = [1,2,3,5,5,6,7];
2、往数组里添加一个元素
arr.push(); 注意:是尾部添加
3、从数组里删除一个元素
arr.pop(); 注意:是尾部移除。
4、arr.length 数组的长度
5、遍历:
for( var i = 0 ; i < arr.length; i++ ){
console.log( arr[i] );
}

js 一般把键值对叫做对象。
6、键值对表示方式为:
var arr = { "a" : "b","c":"d" }
取出键值对的值:
arr.a;

var arr = { "a" : [1,2,3,4,5] }
console.log( (arr.a)[2] );

js特殊值:
1、NaN: 无法识别数据类型。一般是由运算造成的。
2、undefined
1、初始化没有赋值的时候,打印会undefined;
2、在取值的时候,如果目标值不存在,会打印undefined;
注意:变量在初始化的时候,默认值是undefined,如果没有给出具体的值,相当于没有找到引用对象,这个时候该引用会去找最近一个有值变量。
3、null 空值
1、一般是指对象本身是null值的时候打印。
2、选择器获取不到相关控件的时候,一般会显示null

js函数: function 关键字
function abc(){
alert( 1 );
}
abc();

1、函数有作用域。
2、作用域内优先使用自己的变量。再考虑作用域外的变量。
3、作用域包括形参。
4、如果在作用域范围内,重新定义,那么它将不会污染全局变量。
5、如果在作用域范围内,直接使用或者定义,那么将可能污染全局变量。
6、在弱语言中,重复定义,没有定义都是没有错的。但是不推荐此种做法。
//动态调用函数方式。
var a = abc; //abc为函数名
a();

//封装函数写法
var a = {
"userName" : "jabez.huang",
"userPwd" : "123456",
init : function(){
return this;
}
};

js三大选择器:
1、ID选择器 document.getElementById("a")
2、Name选择器 document.getElementsByName("a")[]
3、类选择器 document.getElementsByClassName("a")[]
4、Tag选择器 document.getElementsByTagName("a")[]

.value 一般文本框、下拉菜单等只要有value属性设置的值。都可以用value方法获取或者设置。
.checked 用来获取相关 复选框,单选框是否被选中的值。
.innerHTML 用来设置或者获取元素的内容,包括设置或者获取HTML。
.innerText 用来设置或者获取元素的内容,不包括设置HTML。


注意:单选、复选 都需要用checked 属性来判断是否选中。返回的是布尔类型。

JS事件:
1、全局事件。也就是说任何在该页面发生的某种事件,都可以被监听。
2、在外部监听某一个控件的事件的形式。
3、在控件内部监听。

控件内部监听事件:
1、通过传参的方式,获取相关的控件对象的属性值
function goto( dom ){
window.open( dom.value );
}
<input type="text" value="" οnclick="goto(this)"/>
2、通过普通的选择器方式,获取相关的控件的值
funtion goto(){
document.getElementById("url").value
}
<input type="text" id="url" οnclick="goto()"/>

新语法: url.indexOf("www"),返回找到字符串的索引位置。否则返回-1;
新语法:url.split(","),返回字符串分割后的数组。


JS输出。
1、alert(); 警告
2、console.log(); 控制台

JS基础的变量 var

JS基础的三大弹出框:
1、alert
2、confirm 返回的是布尔类型 确认框
3、prompt 输入框,(标题,默认值)

JS三大特殊值:
1、NaN 无法识别的类型。 一般出现在运算中。
2、undefined
1、变量未初始化赋值。
2、通过document找相关的对象,获取不到的时候就是undefined
3、null
1、该值本身的值为null

强制转换:
1、parseInt
2、parseFloat

JS集合
1、var a = new Array();
2、var b = [1,2,3,4];
3、a.push 在集合尾部加入一个数据。
4、a.pop 在集合尾部移除一个数据。
5、a.length 返回数组的长度。

数组转字符串:
1、join(",")

字符串转数组:
1、split(“”)

字符串语法:
1、indexof() 找到字符串中,出现的位置
2、substr( start, length )
3、substring( start, end )

JS对象,键值对:
var obj = {
"键1" : "",
"键2" : function(){

}
};
可以通过键找到相关的值。
添加一个键值对:obj["a"] = "b";

JS函数。关键字 function。
function a(){ return b; }
this 在函数内部this,就是返回当前调用对象本身。
如果是在js里调用可能就返回windows,如果是控件里调用就返回控件对象。

选择器:
1、ID选择器 document.getElementById()
2、类选择器 document.getElementsByClassName()
3、标签选择器 document.getElementsByTagName()
4、Name选择器 document.getElementsByName()

.value 获取/赋值文本框或一切有value属性的值。
.innerHTML 获取/赋值某一个控件,并且可以使用HTML语法。
.innerText 获取/赋值某一个控件。不可以使用HTML语法。

自定义属性:就是为了方便自己设置获取某些值的属性。
.getAttribute 获取任一控件的属性
.setAttribute 赋值任一控件的属性。

另一种设置style的方式,简单:
document.getElementById("").style.color = "";

JS事件:DOM对象
1、全局的事件

document.onclick = function(){
alert("1");
}

2、在外部监听的某个控件的事件。

document.getElementById("a").onclick = function(){
alert("123");
}

3、在控件内部监听事件。

<input type="text" οnclick="" />

1、点击事件 onclick
2、失焦事件 onblur 失去焦点,常用于表格填写。
3、聚焦事件 onfocus
4、改变事件 onchange
5、鼠标移动事件 onmousemove
6、鼠标移入事件 onmouseenter 注意:需要表示一个控件
7、鼠标移出事件 onmouseleave
8、鼠标弹起事件 onmouseup
9、鼠标移动元素触发事件 onmouseout
10、鼠标移到元素上 onmouseover
11、键盘事件 onkeyup / onkeydown / onkeypress
keyCode = 回车 13
keyCode = 左 37 上 38 右 39 下 40
keyCode = 空格 32
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值