javascript学习一、js的初步了解
1、javascript的简介:
*javascript 是一种基于对象和事件驱动的语言,主要应用于客户端。
-- 基于对象:
** 提供了很多对象,可以直接使用。
--事件驱动:
** html做的网页是静态效果,javascript做的是动态效果。
--客户端:
主要是指浏览器。
*js的特点:
(1)交互性:
--信息的动态交互。
(2)安全性:
--s不能访问本地磁盘中的文件。
(3)跨平台性:
--与java不同,js直接使用 浏览器跨平台。
*javascript和java之间的区别:(没有任何关联)
(1)java是sun公司(现在是oracle)发布
js是网景公司发布。
(2)javascript是基于对象的,java是面向对象的。
(3)java是强类型的语言, js是弱类型的语言。
(4)js是解析就可以执行, java需要先编译再执行。
*js的组成
有三部份
(1)ECMAScript
--ECMA :欧洲计算机协会, 由其为js指定语法。
(2)BOM
--broswer object model : 浏览器对象模型。
(3)DOM
--document object model :文档对象模型。
2、js和html的结合方式(两种)
第一种:
--使用一个标签:
<script type="text/javascript" > js代码 </script>
第二种:
--引入外部文件:
-- 创建一个 .js文件。
-- <script type="text/javascript" src=" 外部文件地址 "> </script>
注意: 在第二种中的script标签中不要写其他js代码了,不会被执行。
3、js的原始类型和声明变量
** java中有是八大基本数据类型 : byte short int long float double char boolean
js中,只有五个原始类型:
--string: 字符串
*** var str = "abc";
--number: 数字类型
*** var num = 123;
--boolean: true和false
*** var falg = true;
--null:
*** 获取对象的引用,null用来表示引用为空,所有对象的引用都为 object
*** var date = new Date();
--undifined
*** 定义一个变量,没有被赋值
*** var aa;
** typeof() ;查看当前变量的数据类型。
** alert() ; 在页面跳出一个对话框。
** document.write();直接想页面输出的语句(可以把括号内的语句输出到页面上)
也可以输出html代码。
4、js的语句
--在java里面的语句:
***if语句
***switch语句
***循环语句: for 、while、 do-while
--在js里面也有这些语句
***if判断语句
注意: *****=: 赋值
*****==:判断
***switch语句
--java从1.7才开始支持 string,枚举类型,
--js中所有类型都支持。
--switch(a){
case 1:
break;
case 2:
break;
default:
... ...
}
--循环语句: for 、 while 、 do-while:与java中的用法一致。
其中, i++ 和 ++i 和java中是一样的。
5、js的运算符
** += : x+=y; 等于: x=x+y;
**js里面不区分整数和小数
var j = 123;
alert(j/1000*1000);
--java中,结果为:0
--js中, 结果为:123
**js中的字符串的相加和相减的操作
var str = "123";
***在相加的时候,做的是字符串的连接。
***在相减的时候,做的是减法运算。
如: alert(str+1)//结果为1231.
alert(str-1)//结果为122.
住意:当str不是一个数字的时候,减法运算会提示错误。
var str = "abc";
alert(str-1);//结果为:提示NaN: 表示这不是一个数字。
**boolean也可以进行数学运算
***如果设置成 true ,进行数学运算的时候,相当于值为:1
***如果设置成 false ,进行数学运算的时候,相当于值为: 0
** == 和 === 的区别
他们都是用来做相等判断的,
*** == 比较的是 值
*** === 比较的是 值 和 类型
如: var i = "5";
i==5 为: true
i===5 为: false。
6、九九乘法表的练习(输出到页面)
*使用: document.write()输出到页面上。
document.write可以输出变量,也可以输出html代码(加双引号)
document.write里面是双引号,里面的标签属性必须使用双引号。
7、javascript的数组
--与java不同,js是弱类型的语言,数组中可以存放不同类型的值。
--java数组定义: int[] arr = {1,2,3};
--js数组定义方式(三种):
第一种: var arr = [1,2,3] || var arr = [1,"2",true]
第二种: 使用内置对象 Array,
var arr = new Array(5); //定义了一个长度为5的数组。
arr[0] = "1"; arr[1] = 2; arr[2] = true;
第三种: 使用内置对象 Araay,
var arr = new Array(3,"4",true);//定义一个数组,其中值为:3,4,true
--数组中有一个属性 length: 获得数组的长度。
--数组的长度是可变的。(与java数组进行区分)
--数组可以存放不同类型的值(与 java 数组进行区分)
8、js中的方法
**在java中定义方法:
修饰词 返回值类型 方法名(参数列表){
方法体;
返回值;
}
public int add(int a, int b){
int sum = a+b;
return sum;
}
**在js中定义方法,有三种方式:
第一种方式:
***使用一个关键字 function
***function 方法名(参数列表){
方法体;
返回值(视需求,可有可无);
}
for example:
function add(a ,b,c){
var sum = a+b+c;
return sum;
}
(调用方法名,使用定义的方法)
第二种方式:
匿名方法。
*** var 变量名 = function(参数列表){
方法体;
返回值;
}
如:
var add = funtion(a,b){
var sum = a+b;
return sum;
}
(之后使用变量名调用方法)
第三种方式:
***动态方法。
***使用一个js的内置对象 Function
var 变量名 = new Function("参数列表","方法体 和 返回值"); (注意,参数和方法体之间是逗号)
var add = new Function("a,b", "var sum=a+b; return sum");
(之后使用变量名调用函数)
****注意,此方式中,可以预先定义好参数列表,和方法体与方法名,在定义方法的时候直接传进来。
9、js的全局变量, 和局部变量
**全局变量: 在script标签里面定义的一个变量,这个变量在页面中js部分都可以使用
--在方法外部使用, 在方法内部使用, 在另一个scipt标签里使用。
**局部变量: 在方法内部定义的一个变量,只能在在方法内部使用。
--如果在方法外部使用,则会提示出错。
--SCRIPT5009: "nn"未定义
12-js的局部变量.html,行18 字符3
**ie(火狐)自带了一个调试工具,ie8及其以上版本,按F12,在页面下方出现调试栏。
10、script标签可以放的位置
**按照格式来说, script标签可以放在任何位置(head,body,甚至是html外)
**但是,在开发中,为了能顺利和htnl代码结合,最好放在:</body> 的后面。
原因:如果script语句中要使用body中的 (如<input type="text"/>中的)值 ,
而script本shent在head中,那么就会出问题,
html是从上到下进行解析的,此时,script中要使用body中
的值,但是还没有解析到body,就拿不到这个值。
所以:建议script放在</body>得后面。
11、js方法的重载
**js中没有重载,在有多个同名但是不同参数的方法时,按照解析顺序,调用方法处使用
其上面的离其最近的 定义的方法。(如果参数不合,就会报错: NaN)
javascript学习一、js的初步了解的更多相关文章
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- JavaScript学习06 JS事件对象
JavaScript学习06 JS事件对象 事件对象:当事件发生时,浏览器自动建立该对象,并包含该事件的类型.鼠标坐标等. 事件对象的属性:格式:event.属性. 一些说明: event代表事件的状 ...
- JavaScript学习03 JS函数
JavaScript学习03 JS函数 函数就是包裹在花括号中的代码块,前面使用了关键词function: function functionName() { 这里是要执行的代码 } 函数参数 函数的 ...
- JavaScript学习12 JS中定义对象的几种方式【转】
avaScript学习12 JS中定义对象的几种方式 转自: http://www.cnblogs.com/mengdd/p/3697255.html JavaScript中没有类的概念,只有对象. ...
- JAVAscript学习笔记 js句柄监听事件 第四节 (原创) 参考js使用表
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JavaScript学习——使用JS完成页面定时弹出广告
1.获取图片的位置(document.getElementById(“”)) 隐藏图片:display:none 定时操作:setInterval(“显示图片的函数”,3000); 2.步骤分析 ( ...
- JavaScript学习笔记——JS中的变量复制、参数传递和作用域链
今天在看书的过程中,又发现了自己目前对Javascript存在的一个知识模糊点:JS的作用域链,所以就通过查资料看书对作用域链相关的内容进行了学习.今天学习笔记主要有这样几个关键字:变量.参数传递.执 ...
- 【JavaScript学习】-JS内置对象1-对象概述
对象(object): JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和 方法.JavaScript 提供多个内建对象,比如 String.Date.Ar ...
- 【javascript】javascript学习之js脚本的解析步骤
将javascript代码加入到HTML代码中,即使用<script>标签的方式有两种:直接嵌入页面中和使用外部js文件. 使用<script>标签嵌入html代码中时,需要指 ...
随机推荐
- python学习笔记(10)--组合数据类型(字典类型)
理解映射: 映射是一种键(索引)和值(数据)的对应.字典是键值对的集合,键值之间无序.用大括号表示{},和dict()创建,键值对用冒号:表示. {键:值,键:值,键:值} >>> ...
- Sql server 经典常用函数
..STUFF()用另一子串替换字符串指定位置.长度的子串.STUFF (<character_expression1>, <start_ position>, <len ...
- pip 指定版本
要用 pip 安装特定版本的 Python 包,只需通过 == 操作符 指定,例如: pip install -v pycrypto==2.3 将安装 pycrypto 2.3 版本.
- YUV格式与RGB格式
YUV420介绍: YUV420格式是指,每个像素都保留一个Y(亮度)分量,而在水平方向上,不是每行都取U和V分量,而是一行只取U分量,则其接着一行就只取V分量,以此重复(即4:2:0, 4:0:2, ...
- 了解AutoCAD对象层次结构 —— 1 ——应用程序
想象这样一个场景:当您开始一天的工作,坐到电脑前面,用鼠标双击桌面上的AutoCAD Civil 3D图标,这时一个AutoCAD Civil 3D应用程序将运行起来.打开Windows任务管理器,我 ...
- 基于虚拟主机的HAProxy配置实战
本实例是如上图所示 主要实现的功能如下: 当客户访问www.tb.com/tb.com的时候HAProxy将网站提交到电商服务器集群当访问bbs.tb.com的时候,将访问请求调度到论坛集群,实现论坛 ...
- BZOJ4372烁烁的游戏——动态点分治+线段树(点分树套线段树)
题目描述 背景:烁烁很喜欢爬树,这吓坏了树上的皮皮鼠.题意:给定一颗n个节点的树,边权均为1,初始树上没有皮皮鼠.烁烁他每次会跳到一个节点u,把周围与他距离不超过d的节点各吸引出w只皮皮鼠.皮皮鼠会被 ...
- Python内建GUI模块Tkinter(一)
Python主窗口 Python特定的GUI界面,是一个图像的窗口,tkinter是python自带的,可以编辑的GUI界面,我们可以用GUI实现很多一个直观的功能,如何想开发一个计算器,如果只是一个 ...
- python打印log重复问题
本博客转载于:http://www.cnblogs.com/huang-yc/p/9209096.html,写得真不错 浅析python日志重复输出问题 目录 问题起源: 问题解析 解决办法 1.改名 ...
- poi的cellstyle陷阱,样式覆盖
问题 cell.getCellStyle().setFont(font); 这句话本来只是想设置这一个单元格cell的字体样式,但是实际上却影响了很多个单元格的样式. 问题出在了,Excel模板中这些 ...