导图社区 JAVAScript考点思维导图
干货分享!JAVAScript考试知识点分享!内容包含:代码位置、常用输出、数据类型、函数和变量、复合数据类型、常用内置对象、控制语句。长期更新,欢迎使用,一起学习共同进步!
编辑于2019-12-28 11:41:06干货分享!JAVAScript考试知识点分享!内容包含:代码位置、常用输出、数据类型、函数和变量、复合数据类型、常用内置对象、控制语句。长期更新,欢迎使用,一起学习共同进步!
您是否真正了解random库?您是否全面了解了Python?次导图将Python基础知识点依次罗列,从0开始学习,使您真正意义上学会Python,学懂Python!
MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。本思维导图是matlab基础知识汇总,包括了基础内容,内容绝对权威来自matlab官网整理,长期更新!
社区模板帮助中心,点此进入>>
干货分享!JAVAScript考试知识点分享!内容包含:代码位置、常用输出、数据类型、函数和变量、复合数据类型、常用内置对象、控制语句。长期更新,欢迎使用,一起学习共同进步!
您是否真正了解random库?您是否全面了解了Python?次导图将Python基础知识点依次罗列,从0开始学习,使您真正意义上学会Python,学懂Python!
MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。本思维导图是matlab基础知识汇总,包括了基础内容,内容绝对权威来自matlab官网整理,长期更新!
JAVAScript
代码位置
<head>
浏览器解析head部分就会执行这个代码,然后才解析页面的其余部分
<body>
Javascript代码在网页读到这个黛玛诗就会执行
<script src="xxxxx.js"></script>
将js代码嵌入到html
注意:初始化的js代码放到head里面会提前执行,调用的函数没有要求
常用输出
document.write()
第一种:输出内容用""括起,直接输出""号内的内容。 document.write("I love JavaScript!"); //内容用""括起来,""里的内容直接输出。
第二种:通过变量,输出内容 var mystr="hello world!"; document.write(mystr); //直接写变量名,输出变量存储的内容。
第三种:输出多项内容,内容之间用+号连接。 var mystr="hello"; document.write(mystr+"I love JavaScript"); //多项内容之间用+号连接
第四种:输出HTML标签,并起作用,标签使用""括起来。 var mystr="hello"; document.write(mystr+"<br>");//输出hello后,输出一个换行符 document.write("JavaScript");
alert(字符串或变量)
注:alert弹出对话框包含一个确定按钮
console.log()
使用console.log()写入到浏览器的控制台。
document.getElementById(“id”)
直接操作文档使用innerHTML写入到HTML元素。 网页由标签将信息组织起来,标签的id属性值是唯一的,我们通过id先找到标签,然后进行操作。 <p id="demo">我的第一个段落</p> <script> document.getElementById("demo").innerHTML = "段落已修改。"; </script> document.getElementById("demo") 是使用id属性来查找HTML元素的JavaScript代码。innerHTML = "段落已修改。" 是用于修改元素的HTML内容(innerHTML)的JavaScript代码。
注释语句
//单行注释
/*多行注释*/
数据类型
整数和实数
整数常量
十六进制
以0x或0X开头
八进制
必须以0开头
十进制
浮点型
包含一个小数点
toFixed()
四舍五入指定的小数位数
特殊数值
NAN
不是个数
Infinity
无限
字符型
‘abc’‘1’
布尔型
true
false
空值
null
undefined
用于确定一个已经创建但是没有初值的变量
转义字符
转义字符 描述 转义字符 描述 \b 退格 \v 跳格(Tab、水平) \n 回车换行 \r 换行 \t Tab符号 \\ 反斜杠 \f 换页 \OO 八进制整数,范围00~77 \’ 单引号 \xHH 十六进制整数,范围00~FF \” 双引号 \uhhhh 十六进制编码的Unicode字符
数据类型的自动转换 当JavaScript尝试操作一个"错误"的数据类型时,会自动转换为"正确"的数据类型。以下输出结果不是你所期望的: 5 + null // 返回 5 null 转换为 0 "5" + null // 返回"5null" null 转换为 "null" "5" + 1 // 返回 "51" 1 转换为 "1" "5" - 1 // 返回 4 "5" 转换为 5 "5"* 2 // 返回 10 "5" 转换为 5 "6" / 2 // 返回 3 "6" 转换为 6 总结:当字符串与其它类型用+连接,其它类型会转为字符串,其它的运算符-,*,/,%都会转换成Number类型
typeof
typeof运算符把类型信息用字符串返回。typeof运算符的返回值有6种:“number”、“string”、“boolean”、“object”、“function”和“undefined”。
函数和变量
function 函数名() { 函数代码; }
1. function定义函数的关键字。 2. "函数名"你为函数取的名字。 3. "函数代码"替换为完成特定功能的代码。 function add2(){ var sum = 3 + 2; alert(sum); }
function 函数名(参数1,参数2) { 函数代码 }
注意:参数可以多个,根据需要增减参数个数。参数之间用(逗号,)隔开。 function add2(x,y) { sum = x + y; document.write(sum); }
局部变量
函数内var声明的变量都是局部变量。直接赋值的变量是全局变量如:carname="Volvo"; 函数体外声明的都是全局变量
复合数据类型
JSON
var person = { // json 'name': 'Bob', 'age': 20, 'tags': ['js', 'web', 'mobile'], 'city': 'Beijing', 'hasCar': true, 'zipcode': null }; for(var o in person) alert(o+ " " +person[o]); // json的遍历 var json = { // json "employees": [{ "firstName": "John", "lastName": "Doe" }, { "firstName": "Anna", "lastName": "Smith" }, { "firstName": "Peter", "lastName": "Jones" }] } json=json.employees; for(var i = 0; i < json.length; i++) { // json的遍历 alert(json[i].firstName + " " + json[i].lastName) }
JSON 语法规则 数据为 键/值 对。 数据由逗号分隔。 大括号保存对象 方括号保存数组
JSON 数组保存在中括号内。 就像在 JavaScript 中, 数组可以包含对象: "sites":[ {"name":"Runoob", "url":"www.runoob.com"}, {"name":"Google", "url":"www.google.com"}, {"name":"Taobao", "url":"www.taobao.com"}] 在以上实例中,对象 "sites" 是一个数组,包含了三个对象。每个对象为站点的信息(网站名和网站地址)。
JSON 字符串转换为 JavaScript 对象。从服务器中读取 JSON 数据,并在网页中显示数据。网页中直接设置 JSON 字符串: 首先,创建 JavaScript 字符串,字符 串为 JSON 格式的数据: 然后,使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象: var obj = JSON.parse(text); 最后,在你的页面中使用新的 JavaScript 对象: 实例 var text = '{ "sites" : [' + '{ "name":"Runoob" , "url":"www.runoob.com" },' + '{ "name":"Google" , "url":"www.google.com" },' + '{ "name":"Taobao" , "url":"www.taobao.com" } ]}';obj = JSON.parse(text); document.getElementById("demo").innerHTML = obj.sites[1].name + " " + obj.sites[1].url;
数组
数组是一组值的集合,每个值都有一个索引号,从0开始,每个索引都有一个相应的值,根据需要添加更多数值。
创建
var myarray=new Array(); //创建一个新的空数组
var myarray = new Array(66,80,90,77,59);//创建数组同时赋值
var myarray = [66,80,90,77,59];//直接输入一个数组(称 “字面量数组”)
常用属性
myarray.length;
//获得数组myarray的长度
toString()
把数组转换成一个字符串 var s=a1.toString() 结果s为a,b,c
join(分隔符)
把数组转换成一个用符号连接的字符串 var s=a1.join("+") 结果s为a+b+c
shift()
将数组头部的第一个元素移出 var s=a1.shift() 结果s为a
unshift()
在数组的头部插入一个元素 a1.unshift("m","n") 结果a1中为m,n,a,b,c
pop()
从数组尾部删除一个元素,返回移除的项 var s=a1.pop() 结果s为c
push()
把一个元素添加到数组的尾部,返回修改后数组的长度 var s=a1.push("m","n")结果a1为a,b,c,m,n同时s为5
concat()
合并数组 arrayObject.concat(array1,array2,...,arrayN)
slice()
返回数组的部分 carrayObject.slice(start,end)
1.返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。 2. 该方法并不会修改数组,而是返回一个子数组。 注意: 1. 可使用负值从数组的尾部选取元素。 2.如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。 3. String.slice() 与 Array.slice() 相似。
splice()
插入、删除或者替换一个数组元素 a1.splice(1,2)结果a1为a
splice()语法:array.splice(index,howmany,item1,.....,itemX) splice()是修改Array的万能方法,主要用途是向数组的中部插入项。其中index必需,该参数是开始插入和(或)删除的数组元素的下标,必须是数字;howmany必需,规定应该删除多少元素,必须是数字,但可以是 "0",如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素;item1, ..., itemX可选,要添加到数组的新元素。 删除:splice()可以删除任意数量的项,只需指定2个参数。 例如:splice(0,2)会删除数组中的前两项。 // 只删除,不添加,返回被删除的元素 插入:splice()可以向指定位置插入任意数量的项,只需提供3个参数,起始位置,0(要删除的项数) 和要插入的项,如果插入多个项,可以在传入第四,第五,多个。 例如:splice(2,0,"red","green") // 只添加,不删除,返回[],因为没有删除任何元素
sort(方法函数)
对数组进行排序操作(默认按字母升序) a2.sort()结果为 x,y,z
1.如果不指定<方法函数>,则按unicode码顺序排列。 2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。 myArray.sort(sortMethod); 注意: 该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下: 若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。 若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。 若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。
reverse()
颠倒数组中元素的顺序。 a2. reverse()结果为z,y, x 注意:该方法会改变原来的数组,而不会创建新的数组。
二维数组
创建
1. 二维数组的定义方法一 var myarr=new Array(); //先声明一维 for(var i=0;i<2;i++){ //一维长度为2 myarr[i]=new Array(); //再声明二维 for(var j=0;j<3;j++){ //二维长度为3 myarr[i][j]=i+j; // 赋值,每个数组元素的值为i+j } }
2. 二维数组的定义方法二 var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3]]
赋值
3. 赋值 myarr[0][1]=5; //将5的值传入到数组中,覆盖原有值。 说明: myarr[0][1] ,0 表示表的行,1表示表的列。
字符串
var mystr = "I love JavaScript!"
stringObject.length;
返回该字符串的长度。
toUpperCase()
方法来将字符串小写字母转换为大写
split()
方法用于把一个字符串分割成字符串数组。
split() 方法用于把一个字符串分割成字符串数组。 提示: 如果把空字符串 ("") 用作 separator,那么每个字符之间都会被分割。 注意: split() 方法不改变原始字符串。 string.split(separator,limit) 参数 描述 separator 可选。字符串或正则表达式,从该参数指定的地方分割 limit 可选。该参数指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
substring()
用于提取字符串中介于两个指定下标之间的字符,返回的子串包括开始 处的字符,但不包括 结束 处的字符。 string.substring(from, to) 参数 描述 from 必需。一个非负的整数,规定要提取的子串的第一个字符位置。 to 可选。一个非负的整数,比要提取的子串的最后一个字符位置多 1。 如果省略该参数,那么返回的子串会一直到字符串的结尾。
substr()
参数指定子串的开始位置和长度 注意: substr() 方法不会改变源字符串。 string.substr(start,length) 参数 描述 start 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。 length 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 开始位置到结尾的字串。
常用内置对象
定时器函数
setInterval()
按指定的周期(以毫秒计)调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。setInterval()函数用法如下: setInterval() ("调用函数","周期性执行或调用code之间的时间间隔"), function hello(){ alert("hello"); } 重复执行某个方法: var t1= window.setInterval("hello()",3000); 去掉定时器的方法 window.clearInterval(t1);
setTimeout()
在指定的毫秒数后调用函数或计算表达式。 setTimeout()函数用法如:setTimeout("调用函数","在执行代码前需等待的毫秒数。") 只执行一次,3 秒后显示一个弹窗:var t=setTimeout(function(){alert("Hello")},3000) 实现循环调用需要把setTimeout定时器函数写在被调用函数里面。如下: function show(){ alert("Hello"); var myTime = setTimeout("show()",1000); } 关闭定时器的用法:clearTimeout(myTime); 其中,myTime为setTimeout()函数返回的定时器对象。 从性能上来说,如果针对的是不断运行的代码,不应该使用setTimeout,而应该是用setInterval,因为setTimeout每一次都会初始化一个定时器,而setInterval只会在开始的时候初始化一个定时器。
Date 日期对象
定义一个时间对象 :var Udate=new Date();
自定义初始值,可以用以下方法: var d = new Date(2012, 10, 1); //2012年10月1日 var d = new Date('Oct 1, 2012'); //2012年10月1日
getDay() 返回星期,返回的是0-6的数字,0 表示星期天
form对象
表单访问
document.forms[索引]
document.表单名称
ducument.forms[索引].属性
document.forms[索引].方法(参数)
docunment.表单名称.属性
document.表单名称.方法(参数)
表单内控件的访问
表单对象.elements[下标]
action属性
action 属性规定当提交表单时,向何处发送表单数据。
method属性
method属性可设置或者返回表单method属性值。制订了如何发送表单数据 (表单数据提交地址在action属性中指定)。 method 属性可以是get,在 URL 中添加表单数据,也可以使用使用post方法提交表单数据。
input控件
form表单中的一种输入对象,其又随type类型的不同而分为 type="text"文本输入框, type="password"为密码输入框, type="radio"/type="checkbox"为单选/复选框, type="button"为普通按钮
name:同样是表示的该文本输入框名称。
size:输入框的长度大小。
maxlength:输入框中允许输入字符的最大数。
value:输入框中的默认值,根据表单name属性值和文本框name属性值可以访问到文本框对象,再访问文本框value的属性就可以得到文本框中的值。这种方式同样使用于密码框,和下拉列表框。 表单名称.控件名称.value 或 表单名称.elements[下标] .value
readonly:表示该框中只能显示,不能添加修改。
placeholder:文本框处于未输入状态并且未获得光标焦点时,降低显示输入提示文字不透明度,如搜索框效果:<input type="text" placeholder="点击这里搜索">
type= "submit" and type="reset",分别是“提交”和“重置”两按钮。submit主要功能是将form中所有内容进行提交action页处理,reset则起快速清空所有填写内容的功能。在表单中加上onsubmit="return false;"可以阻止表单提交。
onsubmit只能表单上使用,提交表单前会触发, onclick是普通按钮等控件使用, 用来触发点击事件。
方法 意义 示例 reset() 将表单中各元素恢复到缺省值,与单击重置按钮(reset)的效果是一样的 myForm.reset() submit() 提交表单,与单击提交按钮(submit)效果是一样的 myForm.submit()
方法 意义 blur() 让光标离开当前元素 focus() 让光标落到当前元素上 select() 用于种类为text,textarea,password的元素,选择用户输入的内容 click() 模仿鼠标单击当前元素 表单对象常用事件:onfocus:在表单元素收到输入焦点时触发;onblur:在表单元素失去输入焦点时触发。如:文本框失去焦点时,以下代码将调用myfun()函数。 <input type="text" value="" name="txtName" onblur ="myfun( )" >
Select 对象
捕获
Select 对象代表 HTML 表单中的一个下拉列表。 可通过遍历表单的elements[] 数组来访问某个 Select 对象,或者使用 document.getElementById()。
options[]
返回包含下拉列表中的所有选项的一个数组。
属性 描述 disabled 设置或返回是否应禁用下拉列表。 form 返回对包含下拉列表的表单的引用。 id 设置或返回下拉列表的 id。 length 返回下拉列表中的选项数目。 multiple 设置或返回是否选择多个项目。 name 设置或返回下拉列表的名称。 selectedIndex 设置或返回下拉列表中被选项目的索引号。 size 设置或返回下拉列表中的可见行数。 tabIndex 设置或返回下拉列表的 tab 键控制次序。 type 返回下拉列表的表单类型。
方法 描述 add() 向下拉列表添加一个选项。 blur() 从下拉列表移开焦点。 focus() 在下拉列表上设置焦点。 remove() 从下拉列表中删除一个选项。
事件句柄 描述 onchange 当改变选择时调用的事件句柄。
约束验证HTML输入属性
属性 描述 disabled 规定输入的元素不可用 max 规定输入元素的最大值 min 规定输入元素的最小值 pattern 规定输入元素值的模式 required 规定输入元素字段是必需的 type 规定输入元素的类型
正则表达式
re=new RegExp("a","i")
匹配a第二个参数表示匹配时不分大小写
var re = /a/gi;
^ 为匹配输入字符串的开始位置。 [0-9]+匹配多个数字, [0-9] 匹配单个数字,+ 匹配一个或者多个。 abc$匹配字母 abc 并以 abc 结尾,$ 为匹配输入字符串的结束位置。
表达式 描述 [abc] 查找方括号之间的任何字符。 [^abc] 查找任何不在方括号之间的字符。 [0-9] 查找任何从 0 至 9 的数字。 [a-z] 查找任何从小写 a 到小写 z 的字符。 [A-Z] 查找任何从大写 A 到大写 Z 的字符。
表达式 描述 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束
表达式 描述 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次
表达式 描述 \W 匹配任意不是字母,数字,下划线,汉字的字符 \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符 \B 匹配不是单词开头或结束的位置 [^x] 匹配除了x以外的任意字符 [^aeiou] 匹配除了aeiou这几个字母以外的任意字符
test()
在字符串中查找是否存在指定的正则表达式
exec()
在字符串中查找指定的正则表达式,并返回包含该查找结果的一个数组
控制语句
条件语句
if(条件) { 条件成立时执行的代码} else {条件不成立时执行的代码}
switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码块 2 break; ... case值n: 执行代码块 n break; default: 都不同时执行的代码 }
循环语句
当循环结构: while(条件表达式){ 语句块 }
直到循环结构,do…while语句: do{ 语句块 } while(条件表达式);
计数循环结构, for语句: for(var i=0;i<length;i++){ 语句块 }
枚举循环结构,for…in语句: for(var i=0 in array){ 或者 for(i in array){ 语句块 语句块 } } for(var item in arr|obj){} 可以用于遍历数组和对象 遍历数组时,item表示索引值, arr表示当前索引值对应的元素 arr[item] 遍历对象时,item表示key值,arr表示key值对应的value值 obj[item]
退出循环break
继续循环continue
异常处理
JavaScript提供了异常处理语句:try-catch。将可能发生错误的语句写入try块的花括号中,并在其后的catch块中处理错误。错误信息包含在一个错误对象里,通过exception的引用可以访问该对象。根据错误对象中的错误信息以确定如果处理。 try{ tryStatements //必选项。可能发生错误的语句序列。 } catch(exception){ //必选项。任何变量名,用于引用错误发生时的错误对象。 catchStatements //可选项。错误处理语句,用于处理tryStatements中发生的错误。 } 示例如下: var txt=""; function message() { try { adddlert("Welcome guest!"); } catch(err) { txt="本页有一个错误。\n\n"; txt+="错误描述:" + err.message + "\n\n"; txt+="点击确定继续。\n\n"; alert(txt); } } message(); throw语句允许创建自定义错误,创建或抛出异常(exception)。如果把throw与try和catch一起使用,能够控制程序流,并生成自定义的错误消息。
prompt(msg,defaultText)()
prompt()方法用于显示可提示用户进行输入的对话框。方法返回用户输入的字符串。