标签:
1 JavaScript
1.1 JavaScript 是一种脚本语言
脚本语言不单独使用,必须嵌入到其他语言中组合使用
1.2 JavaScript 由浏览器解析执行,解析一条,执行一条
1.3 JavaScript 可以控制前端的页面的逻辑操作
例如 可以控制css样式
可以对表单项进行校验
可以对HTML元素进行动态控制
1.4 JavaScript 的特点
交互性
安全性
跨平台性
2. JavaScript 的组成
2.1 ECMAScript 描述了JavaScript 的语法 和基本对象
2.2 DOM 文档对象 : 处理网页内容的方法和接口
2.3 BOM 浏览器对象类型 与浏览器交互的方法和接口
3. JavaScript 和 java 的关系
两者没有一点关系 ,只是语法形式上相似
JavaScrip 与java 的区别
3.1 JavaScrip 是一种脚本语言,java 是一种编程语言
3.2 JavaScrip 是一种弱类型语言 , java 是一种强类型语言
3.3 JavaScrip 是由浏览器执行,java 是由JVM执行
3.4 JavaScrip 是基于对象 , java 是面向对象
4.JavaScrip与HTML的结合 方式
4.1 内部使用(属性结合方式)
4.2 外部使用
<script type="text/javascript" src=" 文件路径名"></script>
5. JavaScrip 中的语法及使用方法
5.1 注释
单行注释 //
多行注释 /**/
5.2 变量
5.2.1 JavaScrip 中的变量格式 var 变量名 = 变量值 ;
5.2.2 变量类型 JavaScrip 中是大小写敏感的
5.2.2.1 原始数据类型
string 字符串类型 ‘’ “” 都 表示 是字符串
boolean
number 数字类型 整数 小数 和NaN
null 对象的占位符,表示引用类型的不用在
typeof 运算符对于null 值 会返回 Object 这实际上是JavaScript最初
的一个错误
typeof() 用来判断 变量值是什么 结果 是原始数据类型
undefined 声明的变量未赋值,系统会默认赋值undefined
undefined 是从null 中派生出来的 undefined == null // true
5.2.2.2 引用数据类型
JavaScript 中并无类,我们可以理解为对象
Object 所有对象的父类
instanceof 用来判断对象属于哪种类型
var obj = new Object('aa');
alert(obj);//aa
var obj = new Boolean(10);
alert(obj);//true
var obj1 = new Boolean("22");
alert(obj1);//true
var obj2 = new Boolean(true);
alert(obj2);//true
var obj3 = new Boolean(false);
alert(obj3);//false
var obj4 = new Boolean(null);
alert(obj4);//false
var str='abc';
alert(str instanceof String);
//false
var str1 = new String('abc');
alert(str1 instanceof String);
//true
var str2 = new String('abc');
alert(str2 instanceof Array);
//false
var str3 = new String('abc');
alert(str3 instanceof Object);
//true
var num = undefined;
alert(num);//undefined
alert(typeof(num));//undrfined
alert(typeof(num.toString()));//不执行
5.2.2.3 类型转换
5.2.2.3.1 转换成字符串
var flag = true;
alert(flag);//true
alert(typeof(flag));//boolean
alert(typeof(flag.toString()));//string
var num = 5;
alert(num);//5
alert(typeof(num));//number
alert(typeof(num.toString()));//string
var num = null;
alert(num);//null
alert(typeof(num));//Object
alert(typeof(num.toString()));//不执行
5.2.2.3.2 转换成数字
var str = 'abc';
alert(typeof(str));//string
alert(parseInt(str));//Nan
alert(typeof(str));//string
var str = true;
alert(typeof(str));//boolean
alert(parseInt(str));//Nan
alert(typeof(str));//boolean
var str = null;
alert(typeof(str));//Object
alert(parseInt(str));//NaN
alert(typeof(str));//Object
var str = '454a55';
alert(typeof(str));//string
alert(parseInt(str));//454
alert(typeof(str));//string
注意:
parseInt() 把其他类型转成整数,有小数直接忽略
parseFloat() 把其他类型转成小数
string 如果可以转换成数字,是多少就转成多少,
如果有非法字符,那么非法字符后面的东西全部忽略
如果第一个就是非法字符,那么就直接转换成NaN
boolean 直接转成NaN
null 转成NaN
undefiend 转换成NaN
5.2.2.3.3 强制类型转换
Boolean(value) - 把给定的值转换成 Boolean 型;
Number(value) - 把给定的值转换成数字(可以是整数或浮点数);
String(value) - 把给定的值转换成字符串;
注意:
Boolean
string 如果有字符串值,那么是true
如果是空字符串,那么是false
number
如果数字非0,那么是true
如果是0或者NaN,那么是false
null
false
undefined false
5.2.3 算术运算符
+符号
算术运算加
字符串连接转换符
number转换符(其他类型转number):
string转number :将值转成数字类型,如果值不是合法数字,就转为NaN
例如:var str = +"11";
var str=‘a‘;
boolean转number : true转为1 ,false转为0-号除了运算外,可以作为转换符
null转number: 转为0
undefined转number:转为 NaN
alert(typeof(str));//string
alert(str);//a
str = + ‘11‘;
alert(typeof(str));//number
alert(str);//11
使用算术运算符时,都会向数字方向进行转换,如果不是数字类型,则不转换。
-符号
算术运算减
转换符
number转换符(其他类型转number)
5.2.4 赋值运算符
= 赋值
+= 原值先加后赋值(若原值不为可运算数字,自动转换为对应数字)
-= 原值先减后赋值(若原值不为可运算数字,自动转换为对应数字)
5.2.5 比较运算符
== 比较值
=== 比较值和类型
!= 比较值
!== 比较值或比较类型,有一个不同即为不同
5.2.6 逻辑运算符
&& 逻辑与
|| 逻辑或
! 非
使用以上逻辑运算符,最终都会用boolean类型运算,若不是boolean类型,则进行转换。
number转boolean:0或NaN 转换成false ,其他为true
string转boolean:””为false,其他为true
null转boolean:转为false
undefined转boolean:转为false
对象转boolean:转为true
5.2.7 条件运算符
var var = (表达式)?value1:value2
5.3 流程控制语句
if switch for while
6 对象
6.1 Number 对象
创建方式:
var mun1 =10; --伪对象 alert (typeof(num1));//number
var num2 = new Number(10); alert(typeof(num2));//Object
var num3 = Number(10); alert(typeof(num3));//number
属性
MAX_VALUE; alert(Number.MAX_VALUE);
MIN_VALUE; alert(Number.MIN.VALUE);
NaN; 可以使用isNaN() 来判断一个值是否为数字
判断
6.2 Boolean 对象
创建方式:
var flag1 = true;
var flag2 = new Boolean(true);
var flag3 = Boolean(true);
alert(flag1);//true
alert(flag2);//true
alert(flag3);//true
6.3 String 对象
创建方式:
属性 length
charAt(5);
concat(str1,..);
indexOf();
replace(srt1,str2);
split("");
6.4 数组
var arr= [1,2,3];
var arr =new Array();
var arr = new Arry(4); 默认数组长度是4
var arr = new Array(1,2); 数组元素是1,2
属性 length
常用 方法
concat(,,,) 连接两个或更多的数组,并返回连接后的结果,对调用的数组没有任何的影响
join()
shift()删除并返回数组的第一个元素,如果数组已空,那么SHIFT()方法将不进行任何 操作,返回 undefien
pop()删除并返回 数组的最后一个元素,如果数组已为空,则pop()不改变数组,并返回 undefiend
push()向数组末尾添加一个或多个元素,并返回新数组的长度
unshift()向数组 开关添加一个或多个元素,并返回回新数组的长度
reverse() 把数组的元素进行物理翻转,会操作数组
sort() 排序会默认根据字符码表去排序,有很大的缺陷,所以最好实现实例
function sortNumber(a,b){ return a-b}
javascript 与 java 中的数组 的区别
数组的长度是可变的
数组的元素可以是任意类型的
6.5 Date 方法
var date = new Date(); 会创建 date 对象,会把当前的系统值做为初始值
var date = new Date(毫秒值) 会创建date对象
方法
toLocaleString() 会把日期 转换成本地日期格式
getDate() 返回 一个月中的某一天
gerDay()
getMath()
getfullYear()
getTime()
settime()
parse()
var date = new Date();
alert("date"+date);
alert("date tolocalestring "+date.toLocaleString());
alert("date gedate "+date.getDate());
alert("date getDay"+date.getDay());
alert("date getMonth "+date.getMonth());
alert("date getFullyear "+date.getFullYear());
alert("date gettime "+date.getTime());
计算某两个时间内相差的天数
var time1 = Date.parse("2015/7/8");
var time2 = Date.parse("2015/7/9");
var long = time2-time1;
alert(long/1000/60/60/24);
6.6 Math 对象
方法
random();
round();
ceil()
floor()
6.7 RegExp 对象
7 全局函数
7.1 eval 可以把字符串当做JavaScript代码来执行
var str ="alert(‘你好‘)";
eval(str);
7.2 isNaN() 判断是否是 NaN 如果参数是NaN 那么返回true 否则是false
7.3 URL
encodeURL() 编码
decodeURL() 解码
encodeURIComponent() URI编码
进行编码的时候适用于 传递参数
decodeURIComponent() URI解码
var str = "http://www.itcast.cn/a.html?dfd=张三&dfd=123abc";
var tem = encodeURI(str);
alert("tem"+tem);
alert(decodeURI(tem));
7.4 URL URI
7.4.1 URL 是统一资源定位符 URL是具体的URI
URI 是统一的资源标识符
URL 是绝对的,资源改变位置 URL
例如:http://www.baidu.com是URL,不是URI
例如:http://www.baidu.com/a.html 是URL也是URI
版权声明:本文为博主原创文章,未经博主允许不得转载。
JavaScript 概述
标签:
原文地址:http://blog.csdn.net/zl18603543572/article/details/47012357