二、JavaScript基础(1)
1、JavaScript 基于对象和事件驱动的脚步语言,主要应用在客户端
特点:交互性(信息的动态交互)、安全性(不可直接访问本地硬盘)、跨平台性(只要可以解析js的浏览器
都可以执行,与平台无关)
2、JavaScript与java不同:
js是基于对象的,java是面向对象的
js只需解析就可以执行,而java需要先编译成字节码文件,再执行。
js是一种弱类型语言,java是强类型语言
3、JavaScript语言组成(3部分组成)
核心(ECMAscript)
文档对象模型(DOM)
浏览器对象模型(BOM)
4、js编写
HTML的<script>标签用于把js插入HTML页面当中
编写js两种方式:内部JS和外部JS
内部JS程序,在HTML源码中
<script type="text/javascript">
alert(1);
</script>
language属性不赞成使用,请使用type属性替代
外部JS程序,在HTML中引入单独的JS程序
<script type="text/javascript" src="1.js"></script>
1.js内容
alert(2);
在引用外部JS的script标签间不能编写JavaScript代码
5、基本语法
变量是弱类型:var a = 10;var b = true; var c = "hello";
注释:单行注释以双斜杆开头(//) 多行注释以(/*)开头,以(*/)结尾
5、JS的数据类型
和java一样存在两种数据类型:
原始值(存储在栈stack中简单数据)
引用值(存储在堆heap中对象)
5种原始数据:Undefined(定义未初始化/访问对象不存在属性)、Null(访问的对象不存在)、Boolean、Number和String
JS中字符串是原始数据类型
查看变量类型: typeof(变量名称),所有引用对象都是object
通过instanceof运算符解决typeof对象类型判断问题
6、JS语句
=赋值,switch语句与java一样,for也一样,但定义变量使用var,不要写错java的int
7、JS运算符
js除法中没有整数,会出现小数(都是数字类型)
字符串与数字相加,是字符串链接;如果相减,字符串直接转换成数字再相减。
Boolean运算,false就是0或null,非0非空是true,默认用1显示
++ --等和java一样
8、JS数组
两种顶底方式:
var arr = [1,2,4];定义一个数组,包含三个元素
var arr = new Array(5);定义一个数组,数组长度是5
var arr = new Array(1,2,4);定义数组,包含三个元素
属性length
9、JS函数定义
方式一:
function add(a,b){
return a+b;
}
方式二:
var add = function(a,b){return a+b;}
方式三:不推荐
var add = new Function('a','b',return a+b;);
最后一个参数是函数体,之前是可变参数
10、JS函数的重载
Java重载:方法名相同 参数个数 或参数 类型不同
JavaScript中是否存在重载
需要使用一个对象arguments
arguments就是一个数组,用于存储函数传入的参数的个数
11、JS全局变量和局部变量
全局变量:在<script>标签中间定义的变量,在标签内乃至整个页面都有效
局部变量:在函数体内定义的变量
12、JS对象之String
String对象的方法分为两类:1、与html有关的方法;2、另一种和java的string相似的方法
13、JS对象之Array对象
见8,常用方法有:
concat() 连接两个或更多的数组,并返回结果。
join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop() 删除并返回数组的最后一个元素
push() 向数组的末尾添加一个或更多元素,并返回新的长度。
reverse()颠倒数组中元素的顺序
14、JS对象之Date对象
创建Date对象:var date = new Date();
常用方法:
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)
getMonth() 从 Date 对象返回月份 (0 ~ 11)
getFullYear() 从 Date 对象以四位数字返回年份
getTime() 返回 1970 年 1 月 1 日至今的毫秒数
常用在防止浏览器缓存时候
setTime() 根据毫秒数设置时间
toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串
15、JS对象之Math对象
Math对象中的方法全部是静态方法,所以不用new直接调用即可。
常用方法:
ceil(x) 对一个数进行上舍入。
floor(x) 对一个数进行下舍入。
round(x) 把一个数四舍五入为最接近的整数
pow(x,y) 返回 x 的 y 次幂
random() 返回 0 ~ 1 之间的随机数
16、JS全局函数global
(1)encodeURI / decodeURI 编解码URI
进行url跳转时可以整体使用encodeURI
(2)escape / unescape 对字符串进行unicode编码
1、escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z
2、encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
3、encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z
isNaN 检查某个值是否为数字
eval 把javascript 字符串作为脚本代码来执行
parseInt方法:把字符串转换成整数
二、JavaScript基础(1)的更多相关文章
- 使用jQuery快速高效制作网页交互特效第一章JavaScript基础
JavaScript 一.JavaScript概念: JavaScript面向对象事件驱动具有安全性的脚本语言,面向对象 JavaScript特点: 1.解释性语言,边运行边解释 2.和HTML页面实 ...
- Javascript基础回顾 之(二) 作用域
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript基础笔记二
一.函数返回值1.什么是函数返回值 函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...
- 2、JavaScript 基础二 (从零学习JavaScript)
11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...
- 前端(十二)—— JavaScript基础操作:if语句、for循环、while循环、for...in、for...of、异常处理、函数、事件、JS选择器、JS操作页面样式
JavaScript基础操作 一.分支结构 1.if语句 if 基础语法 if (条件表达式) { 代码块; } // 当条件表达式结果为true,会执行代码块:反之不执行 // 条件表达式可以为普通 ...
- JavaScript 基础学习(二)js 和 html 的结合方式
第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- JavaScript基础
JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- javascript 基础
javascript概述: javascript历史: * 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEas ...
随机推荐
- wpf 控件添加背景图片
方法一,xaml中: <控件> <控件.Background> <ImageBrush ImageSource="/WpfApplication1;compon ...
- py下windows用户安装lxml
windows用户在安装lxml可能会因为缺少C语言库报错可以选择到Unofficial Windows Binaries for Python Extension Packages下载whl文件 例 ...
- go 源码学习之---Tail 源码分析
已经有两个月没有写博客了,也有好几个月没有看go相关的内容了,由于工作原因最近在做java以及大数据相关的内容,导致最近工作较忙,博客停止了更新,正好想捡起之前go的东西,所以找了一个源码学习 这个也 ...
- AWS免费套餐服务器部署NETCORE网站
之前的linode充了5美元,一个月就用完了,还是创建的最便宜的服务器的!!! 以前一直想用用aws的所谓的免费套餐服务器的,现在linode过期了,可以试着用用了 下面是我的操作流程,包含错误及解决 ...
- golang协程池设计
Why Pool go自从出生就身带“高并发”的标签,其并发编程就是由groutine实现的,因其消耗资源低,性能高效,开发成本低的特性而被广泛应用到各种场景,例如服务端开发中使用的HTTP服务,在g ...
- 常用xpath选择器和css选择器总结
xpath选择器 表达式 说明 article 选取所有article元素的所有子节点 /article 选取根元素article article/a 选取所有属于article的子元素的a元素 // ...
- Intellij 高亮显示与选中字符串相同的内容
如下图所示,我的是 2018,不同版本,Schema 可能要 Save As一下
- 使用Mybatis-Generator自动生成Dao、Model、Mapping
Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件. 1.相关文 ...
- SQL注入学习资料总结
转载自:https://bbs.ichunqiu.com/thread-12105-1-1.html 什么是SQL注入 SQL注入基本介绍 结构化查询语言(Structured Query Lang ...
- Oracle中查看所有表和字段
获取表字段: select * from user_tab_columns where Table_Name='用户表' order by column_name 获取表注释: select * fr ...