1.Netscape公司开发的一种基于对象和事件驱动的脚本语言,并且可在所有主要的浏览器中运行 IE、Firefox,Chrome、Opera等各大浏览器中. 2.JavaScript 被设计用来向 HTML 页面添加交互行为,无需编译,可由浏览器直接解释运行,方便运行和维护. 3.JavaScript 是一种弱类型语言 4.JavaScript 的正式名称是 "ECMAScript"。这个标准由 ECMA 组织发展 特点: 交互性(它可以做的就是信息的动态交互) 安全性(不允许直接访问本地硬盘) 跨平台性(只要是可以解释Js的浏览器都可以执行,和平台无关)
1.JS是Netscape公司的产品,前身是LiveScript;Java是Sun公司的产品,现在是Oracle公司的产品。 2.JS是基于对象,Java是面向对象。 3.JS只需解释就可以执行,Java需要先编译成字节码文件,再执行。 4.JS是弱类型,Java是强类型。
一个完整 JavaScript实现由以下3个部分组成
三种与HTML结合方式: a.事件名="js代码".事件驱动。 b.通过<script></script>标签引入 <script type="text/javascript"> var a= 1; document.write("a变量"+a); </script> c.通过外部js文件 <script type="text/javascript" src="js文件"></script> 由于Javascript是解释型语言,所以是按HTML的从上到下执行,有的时候将Javascript脚本放入头部的话,然后又操作body里的标签节点时,会出现一些问题. ***在哪里放置 JavaScript??? 页面中的脚本会在页面载入浏览器后立即执行。我们并不总希望这样。有时,我们希望当页面载入时执行脚本,而另外的时候,我们则希望当用户触发事件时才执行脚本。 可以查看到W3C文档.***
1.变量、函数、运算符区分大小写 2.变量是弱类型的,变量声明 var a = 10; var b = true; var c = "hello"; 每行结尾的;可有可无,建议编写 3.两种类型的注释 单行注释以双斜杠开头(//) 多行注释以单斜杠和星号开头(/*),以星号和单斜杠结尾(*/)
1.JavaScript和Java一样存在两种数据类型 原始值 (存储在栈Stack中简单数据) 引用值 (存储在堆heap中对象) 2.5种原始数据类型 Undefined、Null、Boolean、Number 和 String JavaScript中字符串是原始数据类型 3.通过typeof运算符,查看变量类型 所有引用类型都是object 4.通过instanceof 运算符解决typeof对象类型判断问题 5.区分 undefined 和 null 变量定义了未初始化/ 访问对象不存在属性 --- undefined 访问的对象不存在 --- null 6.运算符(算术,比较,三元运算) ==只检查值,===检查值,还有类型。 在JavaScript中null,false,0,'',undefined,NaN(not a number)都为假. 7.流程控制语句
Array对象 1.定义数组 var arr = new Array(); var arrayx = new Array(2); //2代表长度 var array1 = new Array(5,6,8); //代表有元素5,6,8.长度为3 var array2 = [45,"68",78]; //定义数组存在45,"68",78元素。长度为3 2.在超出长度后再进行赋值 3.下标可以是字符串 4.常用属性与方法length,concat(),join(),reverse(),sort(),pop(),push(),shift(),unshift() String对象 var str1 = str.substr(1,2); //从小标1开始,取两个字符串. var str2 = str.substring(1,2); //取下标1-2的值 Number对象 toString()方法: var c=12 alert(c.toString(2));//十进制转二进制 var c=“1100”; alert(parseInt(c,2));//二进制转十进制 Date对象 1.得到对象 2.toLocaleString(),getFullYear(), 3.动态时间 <script> function showTime(){ var date = new Date(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); var showT= document.getElementById("showT"); hour = hour<10?"0"+hour:hour; second = second<10?"0"+second:second; minute = minute<10?"0"+minute:minute; showT.value = hour+":"+minute+":"+second; //showT.value = date; } setInterval("showTime()",1000); </script> RegExp对象正则表达式 1.第一种方法 var tel = new RegExp([0-9]{11});//11位数字 例如 var r = new RegExp("[0-9]{11}"); alert(r.exec("1391234567811")); alert(r.test(“1391234567811")); 2.第二种方法 var tel = /^[0-9]{11}$/; var s=/^\S*$/;//0个或多个空白字符 var reg = /^[0-9a-zA-Z_]{6,10}$/;用户名由6-10位字母或数字组成 3.方法 exec(),与match()调用相反 “sssss”.match(/^[0-9a-zA-Z]{6}$/);//成功返回字符串,否则为null replace()方法的运用: 例如: //所有数字替换为a var reg = /\d/g; alert("sds123".replace(reg,"a"));
方式一 function add(a,b){ return a + b; } 函数无需定义返回值,可以直接返回 方式二 var add = function(a,b){return a+b;} 方式三(不推荐使用) var add=new Function('a','b','return a+b;‘); 方法的最后一个参数是函数体,之前是可变参数
1.sNaN 检查某个值是否为数字 2.parseInt / parseFloat 解析字符串为整数 / 浮点数 3.eval 计算javascript字符串,并把它作为脚本代码来执行 var result = eval("123+234"); alert(result); 4.escape与unescape, encodeURI()与decodeURI()
知道更多...........
相关链接:最新W3C中JavaScript 教程