JavaScript学习(零)前引
一)概述
JavaScript是一个面向web的编程语言,一种解释性语言,边执行边解释。也是一种基于对象(Object)和事件驱动(EventDriven)的,安全性好的脚本语言,语法和java类似。一般用来编写客户端脚本,运行在客户端,从而减轻服务器端的负担。
前端开发工程师必须掌握的三种技能之一:
描述网页内容的HTML、描述网页样式的CSS以及描述网页内容的JavaScript。
它主要使HTML静态页面变成动态操作。废话不多说,接下来对JavaScript进行剖析,细节的话,之后的文章会讲到。
二)JavaScript的基本数据类型
1.原始类型(不可变):
字符串 String
数字 Number
布尔 Boolean
2.对象数据类型(可变):
数组 Array(特殊)
对象 Object
注释:JavaScript中最重要的数据类型就是数组和对象。
3.特殊原始类型:
Null 空对象
Undefined 未定义
注意: Null与ndefined的区别?
null 表示无值,而 undefined 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。
三)展示JavaScript语言核心特性
1.如何在文档中查找元素?
2.如何通过表单input元素来获取用户的输入数据?
3.如何通过文档元素来设置HTML内容?
4.如何将数据存储在浏览器中?
5.如何使用脚本发起HTTP请求?
6.如何利用<canvas>元素绘图?
四)构造函数
如果函数用来初始化(使用new运算符)一个新建对象,我们称之为构造函数。
其中JavaScript语言核心定义了三种有用的类:
日期类:代表日期的对象。
正则类:表示正则表达式。
错误类:JavaScript程序中运行时错误和语法错误的对象。
五)需要掌握的知识点
1.词法结构
注释、变量、标识符、保留字
2.类型、值、变量
运算符、日期和时间、字符串(文本)、基本数据类型、类型转换、表达式
3.object对象
属性、JSON(数据格式)
4.函数
嵌套函数、传参
5.正则表达式
直接量字符、字符类、重复字符、锚字符、修饰符
提示:正则表达式是一个描述字符模式的对象。
6.服务器端JavaScript
解释器、HTTP服务器
7.客户端JavaScript
html动态、<script>元素、脚本类型、URL、Web浏览器、jquery框架
8.window对象
浏览器窗口(相当于一个框架)的定义
9.DOM文档对象模型
文档元素和属性
10.BOM浏览器对象模型
浏览器属性和行为
注意:JavaScript的BOM和DOM有什么区别?
BOM是浏览器对象模型,用来获取或设置浏览器的属性、行为,例如:新建窗口、获取屏幕分辨率、浏览器版本号等。
DOM是文档对象模型,用来获取或设置文档中标签的属性,例如获取或者设置input表单的value值。
BOM的内容不多,主要还是DOM。
由于DOM的操作对象是文档(Document),所以dom和浏览器没有直接关系。
11CSS
复合属性、样式、属性值
12.事件处理
事件类型、Ajax技术
六)全局对象
全局对象在JavaScript中有着重要的用途:
全局对象的属性是全局定义的符号,JavaScript程序可以直接使用。
当JavaScript解释器启动时(或者任何Web浏览器加载新页面的时候),它将创建一个新的全局对象,
并给它一组定义的初始属性:
1.全局属性:比如undefined、Infinity和NaN。
2.全局函数:比如isNaN()、parseInt()。
3.构造函数:比如Date()、RegExp()、String()、Object()和Array()。
4.全局对象:比如Math和JSON。
七)语句
1.条件语句:JavaScript解释器可以根据一个表达式的值来判断是执行还是跳过这些语句,
如if语句和switch语句。
2.循环语句:可以重复执行语句,如while和for语句。
3.跳转语句:可以让解释器跳转至程序的其他部分继续执行,如break、return、continue和throw语句。
4.声明语句:声明新变量或定义新函数。
5.表达式语句:赋值和函数调用这些有副作用的表达式来作为单独的表达式(把表达式当做语句)。
6.复合语句:多条语句联合在一起。
7.空语句:包含0条语句。
八)属性特性
1.可写:表明是否可以设置该属性的值。
2.可枚举:表明是否可以通过for/in循环返回该属性。
3.可配置:表明是否可以删除或修改该属性。
九)对象特性
1.对象的原型:指向另外一个对象,本对象的属性继承自它的原型对象。
2.对象的类:是一个标识对象类型的字符串。
3.对象的扩展标记:指明了是否可以向该对象添加新属性。
十)正则表达式的定义
1.用RegExp对象表示正则表达式。
提示:它是对字符串执行模式匹配的强大工具。
2.RegExp对象中有RegExp属性。
3.RegExp对象定义了RegExp的方法。
十一)选择文档元素
1.用指定的ID属性。
2.用指定的name属性。
3.用指定的标签名字。
4.用指定的css类。
5.匹配指定的css选择器。
十二)JavaScript 事件参考手册

这只是让大家知道什么是JavaScript,需要掌握什么知识,这篇我只是将我知道的知识点粗讲一下,
以后会细讲的,还是希望大神多指点!
JavaScript学习(零)前引的更多相关文章
- Javascript学习6 - 类、对象、继承
原文:Javascript学习6 - 类.对象.继承 Javasciprt并不像C++一样支持真正的类,也不是用class关键字来定义类.Javascript定义类也是使用function关键字来完成 ...
- javascript学习日志:前言
javascript学习日志系列的所有博客,主要理论依据是<javascript权威指南>(犀牛书第6版)以及<javascript高级程序设计第三版>(红色书),目前js行业 ...
- JavaScript学习(1)之JavaScript基础
JavaScript学习(1)之JavaScript基础 由于工作原因,开发语言逐渐以JavaScript为主,所以,抽空学习了下JavaScript语法.等现阶段的工作稳定之后,陆续会分享下自己在学 ...
- JavaScript学习记录四
title: JavaScript学习记录四 toc: true date: 2018-09-16 20:31:22 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...
- JavaScript学习记录二
title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...
- JavaScript学习记录一
title: JavaScript学习记录一 toc: true date: 2018-09-11 18:26:52 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- JavaScript学习基础部分
JavaScript学习基础 一.简介 1.JavaScript 是因特网上最流行的脚本语言,并且可在所有主要的浏览器中运行,比方说 Internet Explorer. Mozilla.Firefo ...
- JavaScript学习总结(二)
JavaScript学习总结(二) ---- 对象 在JavaScript中,几乎用到的每个js都离不开它的对象.下面我们深入了解一下js对象. js中对象的分类跟之前我们学过的语言中函数的分类一样, ...
- Javascript学习1 - Javascript中的类型对象
原文:Javascript学习1 - Javascript中的类型对象 1.1关于Numbers对象. 常用的方法:number.toString() 不用具体介绍,把数字转换为字符串,相应的还有一个 ...
随机推荐
- 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)
vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...
- Lesson 24 It could be worse
Text I entered the hotel manager's office and sat down. I had just lost £50 and I felt very upset. ' ...
- .NET 环境中使用RabbitMQ
在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的但是执行起来比较较耗时的地方,比如发送短信 ...
- C++ std::queue
std::queue template <class T, class Container = deque<T> > class queue; FIFO queue queue ...
- magic方法的magic
事实上,在python中一个类被实例化的时候首先被调用的并不是__init__方法,而是__new__方法.只是new方法一般很少重写.new方法会有返回值传给init方法.因此,init方法不能够有 ...
- css3圆环百分比,菜单栏定位导航
前段时间,社区个人中心改版,看了下设计图,当时隐约感觉到有两个地方(圆环百分比,菜单栏定位导航)比较麻烦.设计图大致如下: 首先看圆环百分比,网上的做法大致分两种,一种是用了CSS3中的transfo ...
- .NET Core采用的全新配置系统[1]: 读取配置数据
提到“配置”二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置定义在这两个文 ...
- CRL快速开发框架系列教程八(使用CRL.Package)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- linux进程间通信之一:无名管道
无名管道是linux中管道通信的一种原始方法,有以下特征: 1.单工通信模式,具有固定的读端和写端: 2.管道可以看成是一种特殊的文件,对于它的读写可以使用普通的read(),write()等文件IO ...
- centos下MYSQL 没有ROOT用户的解决方法。
SbTest for using sysbench creating scritps: sysbench --test=oltp --oltp-table-size=100000 --mysql-db ...