JavaScript是脚本语言、一种轻量级的编程语言、可插入HTML页面的编程代码、插入 HTML 页面后,可由所有的现代浏览器执行;
JavaScript引入方式
script标签内写代码
<script>
JS代码
</script>
引入额外的JS文件
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
JavaScript中的语句要以分号(;)为结束符。
变量声明
var name = "Alex"; name "Alex" var age = 18; age 18
字符串
var a ="Hello"; var b ="world"; var c = a + b; console.log(c); Helloworld
常用方法:
方法 | 说明 |
.length | 返回长度 |
.trim() | 移除空白 |
.trimLeft() | 移除左边的空白 |
.trimRight() | 移除右边的空白 |
.charAt(n) | 返回第n个字符 |
.concat(value, ...) | 拼接 |
.indexOf(substring, start) | 子序列位置 |
.substring(from, to) | 根据索引获取子序列 |
.slice(start, end) | 切片 |
.toLowerCase() | 小写 |
.toUpperCase() | 大写 |
.split(delimiter, limit) | 分割 |
布尔类型
区别于Python,true和false都是小写。
var a = true; var b = false;
""(空字符串)、0、null、undefined、NaN都是false。
类似于Python中的列表。
var a = [123, "ABC"]; console.log(a[1]); // 输出"ABC"
console.log(a[0]); enter输出“123”
常用方法:
方法 | 说明 |
.length | 数组的大小 |
.push(ele) | 尾部追加元素 |
.pop() | 获取尾部的元素 |
.unshift(ele) | 头部插入元素 |
.shift() | 头部移除元素 |
.slice(start, end) | 切片 |
.reverse() | 反转 |
.join(seq) | 将数组元素连接成字符串 |
.concat(val, ...) | 连接数组 |
.sort() | 排序 |
可以使用以下方式遍历数组中的元素:
var a = [10, 20, 30, 40]; for (var i=0;i<a.length;i++) { console.log(i); }
0
1
2
3
typeof "abc" // "string"(输入 typeof “abc”出现string,表示abc是字符串) typeof null // "object"(输入 typeof “null”出现object,表示null是目标) typeof true // "boolean"(输入 typeof “true ”出现boolean,表示true 是布尔) typeof 123 // "number"
var a = 10; if (a > 5){ console.log("yes"); }else { console.log("no"); }
var a = 10; if (a > 5){ console.log("a > 5"); }else if (a < 5) { console.log("a < 5"); }else { console.log("a = 5"); }
var i = 0; while (i < 10) { console.log(i); i++; }
var a = 1; var b = 2; var c = a > b ? a : b
JavaScript中的函数和Python中的非常类似,只是定义方式有点区别。
// 普通函数定义 function f1() { console.log("Hello world!"); }
jQuery对象就是通过jQuery包装DOM对象后产生的对象。jQuery对象是 jQuery独有的。如果一个对象是jQuery对象,那么它就可以使用jQuery里的方法:例如$(“#i1”).html()。
$("#i1").html():获取id为i1元素的代码,其中html()是jQquery里面的方法。
$("#i1").html()相当于:document.getElementById("i1").innerHTML;
虽然 jQuery对象
是包装 DOM对象
后产生的,但是 jQuery对象
无法使用 DOM对象
的任何方法,同理 DOM对象
也没不能使用 jQuery
里的方法.
一个约定,我们在声明一个jQuery对象变量的时候在变量名前面加上$:
var $yes = jQuery对像 var yes = DOM对象 $yes[0]//jQuery对象转成DOM对象
$(selector).action()
id选择器:
$("#id")
标签选择器:
$("tagname")
class选择器:
$(".classname")
配合使用:
$("div.c1") // 找到有c1 class类的div标签
所有元素选择器:
$("*")
组合选择器:
$("#id, .className, tagName")
层级选择器:
x和y可以为任意选择器
$("x y");// x的所有后代y(子子孙孙)
$("x > y");// x的所有儿子y(儿子)
$("x + y")// 找到所有紧挨在x后面的y
$("x ~ y")// x之后所有的兄弟y
基本筛选器:
:first // 第一个
:last // 最后一个
:eq(index)// 索引等于index的那个元素
:even // 匹配所有索引值为偶数的元素,从 0 开始计数
:odd // 匹配所有索引值为奇数的元素,从 0 开始计数
:gt(index)// 匹配所有大于给定索引值的元素
:lt(index)// 匹配所有小于给定索引值的元素
:not(元素选择器)// 移除所有满足not条件的标签
:has(元素选择器)// 选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)
例子:
$("div:has(h1)")// 找到所有后代中有h1标签的div标签 $("div:has(.c1)")// 找到所有后代中有c1样式类的div标签 $("li:not(.c1)")// 找到所有不包含c1样式类的li标签 $("li:not(:has(a))")// 找到所有后代中不含a标签的li标签
click(function(){...});
hover(function(){...});
blur(function(){...});
focus(function(){...});
change(function(){...});
keyup(function(){...});
.on( events [, selector ],function(){})
.off( events [, selector ][,function(){}])
off()
方法移除用 .on()
绑定的事件处理程序。
原文:https://www.cnblogs.com/hudaxian/p/13462670.html