JavaScript基础知识(学习笔记)
1. 在JavaScript中所有事物都是对象:字符串、数字、数组、日期等等
2. 在JavaScript中,对象是拥有属性和方法的数据
3. 属性是与对象相关的值,方法是能够在对象上执行的动作
4. 函数是由事件驱动的或者当它被调用执行的可重复使用的代码块
5. 在调用函数时,可以向其传递值,这些值被称为参数,这些参数可以在函数中使用
6. 在使用return 语句时,函数会终止执行,并返回确定的值
7. 在JavaScript函数内部声明的变量是局部变量,所以只能在函数内部访问它(该变量的作用域是局部的)
8. 在函数外声明的变量是全局变量,网页上所以的脚本和函数都能访问它
9. 全等(===),其值和类型都要相等
10. For/in 语句循环遍历对象的属性,属性的概念,例如:person类中的name、age就是属性
11. JavaScript可用来在数据被传送服务器前对HTML表单中的这些输入数据进行验证
12. 通过可编程的对象模型,JavaScript获得了足够的能力来创建动态的HTML,JavaScript能够改变页面中的所有的HTML元素。JavaScript能够改变页面中所有的HTML属性。JavaScript能够改变页面中所有的CSS样式。JavaScript能够对页面中的所有事件作出反应
13. 操作HTML元素,你必须首先先找到该元素,有三种方法:通过id找到HTML元素,通过标签名找到HTML元素,通过类名找到HTML元素
14. HTML事件的例子:当用户点击鼠标时,当网页已加载时,当图像已加载时,当鼠标移动到元素上时,当输入字段被改变时,当提交HTML表单时,当用户触发按键时
15. document.getElementById("one").onclick=function(){fun()};这个即使用HTML DOM来分配事件,向button元素分配onclick事件
16. onload和onunload事件会在用户进入或离开页面时被触发。onload事件可用于检测访问者的浏览器类型和浏览器版本,并基于这些信息来加载网页的正确版本。onload和onunload事件可用于处理cookie
17. onchange事件常结合对输入字段来使用。
18. onmouseover和ommouseout事件可用于在用户的鼠标移至HTML元素时触发函数。
19. onmousedown、onmouseup以及onclick构成了鼠标点击事件的所有部分。首先当点击鼠标按钮时,会触发onmousedown事件,当释放鼠标按钮时,会触发onmouseup事件。最后,当完成鼠标点击时,会触发onclick事件
20. onfocus事件:当指针移动到元素上方时,改变其背景色
21. JavaScript中的所有事物都是对象:字符串、数值、数组、函数等等。此外,JavaScript允许自定义对象
22. 创建对象的两种方法:1.定义并创建对象的实例 2.使用函数来定义对象,然后创建新的对象实例。
23. JavaScript是面向对象的语言,但JavaScript不使用类。在JavaScript中,不会创建类,也不会通过类来创建对象
24. IndexOf()方法来定位字符串中某一个指定的字符首次出现的位置。
25. match()方法来查找字符串中特定的字符,并且如果找到的话,则返回这个字符。
26. 如何替换字符串中的字符---replace()
var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/,"W3School"))
27. 返回当前的日期和时间,使用Date()方法。getTime()方法返回从1970年1月1日至今的毫秒数。SetFullYear()方法设置具体的日期。toUTCString()将当前的日期(根据UTC)转换为字符串。getDay()显示的是星期,可和数组来显示星期,而不仅仅是数字。
28. 在网页上显示一个时钟(代码转自W3School)
<html>
<head>
<script type="text/javascript">
function startTime()
{
var today=new Date()
var h=today.getHours()
var m=today.getMinutes()
var s=today.getSeconds()
m=checkTime(m)
s=checkTime(s)
document.getElementById('txt').innerHTML=h+":"+m+":"+s
t=setTimeout('startTime()',500)
}
function checkTime(i)
{
if (i<10)
{i="0" + i}
return i
}
</script>
</head>
<body onload="startTime()">
<div id="txt"></div>
</body>
</html>
29. 可使用concat()方法来合并两个数组
30. 用数组的元素组成字符串-----join() 即将数组的所有元素组成一个字符串。
31. 可使用sort()方法从字面、数值上对数组进行排序
32. round()方法:四舍五入Math.round()
33. random()返回0到1之间的随机数
34. Math.max(5,7) max()来返回两个给定的数中较大的数。min()类同
35. RegExp对象用于规定在文本中检索的内容RegExp是正则表达式的缩写。当你检索某个文本时,可以使用一种模式来描述要检索的内容,RegExp就是这种模式。
36. 定义RegExp:RegExp对象用于存储检索模式。通过new关键字来定义RegExp对象。RegExp对象有3个方法:test()、exec()以及compile()。test()方法检索字符串中的指定值,返回值是true或false。exec()方法检索字符串中的指定值,返回值是被找到的值,如果没有匹配,则返回null。compile()方法用于改变检索模式,也可以添加或删除第二个参数。(代码转自W3School)
<html>
<body>
<script type="text/javascript">
var patt1=new RegExp("e");
document.write(patt1.test("The best things in life are free"));
patt1.compile("d");
document.write(patt1.test("The best things in life are free"));
</script>
</body>
</html>
37. 浏览器对象模型(BOM),由于现代浏览器已经(几乎)实现了JavaScript交互性方面的相同方法和属性,因此常被认为是BOM的方法和属性。
38. 所有浏览器都支持window对象,它表示浏览器窗口。所有JavaScript全局对象,函数以及变量均自动成为window对象的成员。全局变量是window对象的属性。全局函数是window对象的方法。其他 Window 方法
window.open() - 打开新窗口
window.close() - 关闭当前窗口
window.moveTo() - 移动当前窗口
window.resizeTo() - 调整当前窗口的尺
39. Window.screen对象包含有关用户屏幕的信息。window.screen对象在编写时可以不适用window这个前缀 screen.availWidth—可用的屏幕宽度 screen.availHeight—可用的屏幕高度。screen.availWidth属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如窗口任务栏。screen.availHeight属性返回访问者屏幕的高度,以像素计,减去界面特性,比如窗口任务栏,即返回你的屏幕的可用高度。
40. Window.location对象用于获得当前页面的地址(URL),并把浏览器重定向到新的页面。Window.location对象在编写的时候可不使用window这个前缀。Location.hostname返回web主机的域名。Location.pathname返回当前页面的路径和文件名,即返回URL的路径名。Location.port返回web主机的端口(80或443)。Location.protocol返回所使用的web协议。location.href属性返回当前页面的URL。Location.assign方法加载新的文档。
<!DOCTYPE html>
<html>
<head>
<script>
function fun(){
location.assign("这里写一个网址");
}
</script>
</head>
<body>
<input type="button" value="加载新文档" onclick="fun()">
</body>
</html>
41. Window.history对象 包含浏览器的历史。history.back()—与在浏览器点击后退按钮相同。history.forward()---与在浏览器中点击按钮向前相同。history.back()方法加载历史列表中前一个URL,这与在浏览器中点击后退按钮时相同的。History.forward方法加载历史列表的下一个URL,这与浏览器中点击前进按钮时相同的。
42. window.navigator对象包含有关访问者浏览器的信息。警告:来自navigator对象的信息具有误导性,不应该被用于检测浏览器版本,这是因为:navigator数据可被浏览器使用者更改。 浏览器无法报告晚于浏览器发布的新操作系统。
43. 可以在JavaScript中创建三种消息框:警告框、确认框、提示框。
44. 警告框语法:alert()
45. 确认框 confirm() 确认框用于使用户可以验证或者接受某些信息,当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作 如果用户点击确认,那么返回值为true,如果用户点击取消,那么返回值为false。
46. 提示框经常用于提示用户在进入页面前输入某个值。当提示框出现后,用户需要输入某个值,让后点击确认或取消按钮才能继续操纵。如果用户点击确认,那么返回值为输入的值,如果用户点击取消,那么返回值为null。其语法是:prompt();
47. 通过使用JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行,我们称之为计时事件。在JavaScript中使用计时事件,两个关键方法是:setTimeoue() 未来的某时执行代码 clearTimeout() 取消setTimeout()
48. setTimeout()方法会返回某个值,语法:var t =setTimeout(“JavaScript语句”,毫秒);
而取消setTimeout(),语法:clearTimeout(t)
49. 无限循环计时器(代码转自W3School)
<html>
<head>
<script type="text/javascript">
var c=0
var t
function timedCount()
{
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
}
</script>
</head>
<body>
<form>
<input type="button" value="开始计时!" onClick="timedCount()">
<input type="text" id="txt">
</form>
<p>请点击上面的按钮。输入框会从 0 开始一直进行计时。</p>
</body>
</html>
50. 带有停止按钮的无穷循环中的计时事件(代码转自W3School)
<html>
<head>
<script type="text/javascript">
var c=0
var t
function timedCount()
{
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
}
function stopCount()
{
c=0;
setTimeout("document.getElementById('txt').value=0",0);
clearTimeout(t);
}
</script>
</head>
<body>
<form>
<input type="button" value="开始计时!" onClick="timedCount()">
<input type="text" id="txt">
<input type="button" value="停止计时!" onClick="stopCount()">
</form>
<p>请点击上面的“开始计时”按钮来启动计时器。输入框会一直进行计时,从 0 开始。点击“停止计时”按钮可以终止计时,并将计数重置为 0。</p>
</body>
</html>
51. Cookie用来识别用户(代码转自W3School)
创建一个欢迎cookie
<html>
<head>
<script type="text/javascript">
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=")
if (c_start!=-1)
{
c_start=c_start + c_name.length+1
c_end=document.cookie.indexOf(";",c_start)
if (c_end==-1) c_end=document.cookie.length
return unescape(document.cookie.substring(c_start,c_end))
}
}
return ""
}
function setCookie(c_name,value,expiredays)
{
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+ //escape() 函数可对字符串进行编//码,这样就可以在所有的计算机上读取该字符串。
((expiredays==null) ? "" : "; expires="+exdate.toGMTString())
}
function checkCookie()
{
username=getCookie('username')
if (username!=null && username!="")
{alert('Welcome again '+username+'!')}
else
{
username=prompt('Please enter your name:',"")
if (username!=null && username!="")
{
setCookie('username',username,365)
}
}
}
</script>
</head>
<body onLoad="checkCookie()">
</body>
</html>
52. 什么是cookie?cookie是储存于访问者的计算机中的变量,每当同一台计算机通过浏览器请求某个页面时,就会发送这个cookie,你可以是哟和JavaScript来创建和取回cookie的值。
有关cookie的例子:1、名字cookie 当访问者首次访问页面时,访问者也许会填写他们或她们的名字,名字会储存于cookie中,当访问者再次访问该网站时,访问者会收到雷士“Welcome”的欢迎词。而名字则是从cookie中取回的。2.密码cookie 3.日期cookie
53. JavaScript框架(库) JavaScript高级程序设计(特别是对浏览器的复杂处理),通常很困难也很耗时。为了应对这些调整,许多的JavaScript库应运而生。这些JavaScript库常称为JavaScript框架。比较受欢迎的是jQuery、prototype、MooTools。所有这些框架都提供针对对常见JavaScript任务的函数、包括动画、DOM操作以及ajax处理。
54. jQuery是目前最受欢迎的JavaScript框架,它使用css选择器来访问和操作网页上的HTML(DOM对象)。jQuery同时提供companion UI(用户界面)和插件。
55. Prototype是一种库,提供用于执行常见web任务的简单API。API是应用程序编程接口的缩写,它是包含属性和方法的库,用于操作HTML DOM。Prototype通过类和继承,实现了对JavaScript的增强。
56. MooTools也是一个框架,提供了可使常见的JavaScript编程更为简单的API。MooTools也包含有一些轻量级的效果和动画函数。
57. jQuery描述:主要的jQuery函数是$()函数。如果向该函数传递DOM对象,带有向其添加的jQuery功能。jQuery允许通过css选择器来选取元素。jQuery允许链接。链接是一种在同一对象上执行多个任务的便捷方法。
58. prototype提供的函数可使HTML DOM编程更容易。与jQuery类似,Prototype也有自己的$()函数。$()函数接收HTML DOM元素的id值(或DOM元素),并会向DOM对象添加新的功能。与jQuery不同,Prototype没有用以取代window.onload()的ready()方法。相反,Prototype会向浏览器及HTML DOM添加扩展。Event.observe()接收三个参数:1.希望处理的html DOM或BOM(浏览器对象模型)对象 2.处理的事件 3.调用的函数
JavaScript基础知识(学习笔记)的更多相关文章
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- java基础知识学习笔记
本文知识点以js为参照.对比分析得出笔记.JavaScript之所以叫JavaScript是打算借助java推广自己.虽然都是开发语言,但JavaScript一开始主要运行在 客户端,而java主要运 ...
- 〖前端开发〗HTML/CSS基础知识学习笔记
经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...
- javascript 基础知识学习1
JavaScript 是脚本语言.浏览器会在读取代码时,逐行地执行脚本代码.而对于传统编程来说,会在执行前对所有代码进行编译.基础知识:1).JavaScript 对大小写敏感.JavaScript ...
- javascript基础知识学习
javascript中几种基础函数的介绍 1.typeof 注意: ① typeof 是操作符,不是函数: ② typeof 操作符 接收一个参数,用来判断参数数据类型,存在六种返回值类型,非别是:u ...
- 传智播客 Html基础知识学习笔记
HTML基础 <p></p>标志对用来创建一个段落,,<p>标志还可以使用align属性, 它用来说明对齐方式 语法是:<p align="&quo ...
- MongoDB 基础知识学习笔记
注意:本文假设您已经安装好 MongoDB 数据库并启动它了. 连接 MongoDB.数据库操作.集合操作 连接 MongoDB mongo ip:port/dbName -u username -p ...
- Unity基础知识学习笔记二
1,object Instantiate(object original,Vector3 position,Quaternion rotation) 克隆原始物体,并返回克隆物体. ...
- Unity基础知识学习笔记一
1,Unity 4.5.4这个版本,在打包ios应用程序的时候.会生成一个xcode工程,但是这个工程无法在xcode6上变异,无法生成ios8上发布.所以unity在ios8发布3天内就发了4. ...
- jquery基础知识学习笔记
jquery是一个js库/常用版本是jjquery-1.7.2.js/这个版本主要是用来做开放用途 做产品的时候是用它的min版本.玩jquery的时候,不管干啥都要花钱(美元) 注意点: 1.s ...
随机推荐
- webform repeater
repeater:由模板构成,解析后模板就不存在了 需要指定数据源进行数据绑定 List<Fruit> list = new FruitDA().Select(); ...
- N!水题
//题目是求N!的问题,思路:设定一个整形数组来存放每次计算过后的值 有两个for循环,第一个for循环每次加进一个数 然后在第二个for循环里面计算出此时的阶乘,比如9999,先给出i=2 在第二个 ...
- (转)HTML特殊字符
HTML 原始码 显示结果 描述 < < 小於号或显示标记 > > 大於号或显示标记 & & 可用於显示其它特殊字符 " " 引号 ® ® ...
- ant打包命令
学习ant打包命令.发布到以上tomcat还未做集成部署,无法添加到jenkins中. http://blog.csdn.net/telnetor/article/details/7015935 ht ...
- android studio 改变主题及字体大小
一丶修改主题背景 1.点击图中的小扳子图标(设置),或者点击file->setting-> 2.找到Appearance->在Theme中选择Darcula,即可改变成当前最主流的主 ...
- 在vim中设置 '打印时间'的快捷键.
在 ~/.vimrc (没有该文件可以手动创建)中输入 map <F4> <Esc>:r !date<CR> 实现在 '一般模式'状态点击 F4时,自动在vim中打 ...
- Linux升级C基本运行库CLIBC
在你准备升级GLIBC库之前,你要好好思考一下, 你真的要升级GLIBC么? 你知道你自己在做什么么? glibc是gnu发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎 ...
- iOS8中添加的extensions总结(四)——Action扩展
Action扩展 注:此教程来源于http://www.raywenderlich.com的<iOS8 by Tutorials> 1.准备 本次教程利用网站bitly.com进行 bit ...
- Apache 2.x+jboss6.1反向代理session共享问题设置
2016年8月4日,第一次开笔写博客园,今天在公司解决了一个问题. apache+jboss做负载均衡的问题一直困扰了很久.问题描述如下,使用apche做反向代理转发给3台jboss 的app,app ...
- JAVA-1-HelloWorld
public class HelloWorld{ public static void main(String[] args){ System.out.println("HelloWorld ...