2014-06-29 Web-Front的学习(3)-----JavaScript基础

1.JavaScript的概述

1.Netscape公司开发的一种基于对象和事件驱动的脚本语言,并且可在所有主要的浏览器中运行 IE、Firefox,Chrome、Opera等各大浏览器中.
2.JavaScript 被设计用来向 HTML 页面添加交互行为,无需编译,可由浏览器直接解释运行,方便运行和维护.
3.JavaScript 是一种弱类型语言
4.JavaScript 的正式名称是 "ECMAScript"。这个标准由 ECMA 组织发展
  特点:
    交互性(它可以做的就是信息的动态交互)
    安全性(不允许直接访问本地硬盘)
    跨平台性(只要是可以解释Js的浏览器都可以执行,和平台无关)

2.JavaScript和Java的区别

1.JS是Netscape公司的产品,前身是LiveScript;Java是Sun公司的产品,现在是Oracle公司的产品。
2.JS是基于对象,Java是面向对象。
3.JS只需解释就可以执行,Java需要先编译成字节码文件,再执行。
4.JS是弱类型,Java是强类型。

3.JavaScript能够做什么

2014-06-29 Web-Front的学习(3)-----JavaScript基础

4.JavaScript语言的组成

  一个完整 JavaScript实现由以下3个部分组成

  •    核心(ECMAScript) 

  •    文档对象模型(DOM) 

  •    浏览器对象模型(BOM) 

    2014-06-29 Web-Front的学习(3)-----JavaScript基础

5.如何实现JavaScript

三种与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文档.***

6.JavaScript的基本语法

1.变量、函数、运算符区分大小写
2.变量是弱类型的,变量声明
    var a = 10;
    var b = true;
    var c = "hello"; 
    每行结尾的;可有可无,建议编写
3.两种类型的注释
    单行注释以双斜杠开头(//) 
    多行注释以单斜杠和星号开头(/*),以星号和单斜杠结尾(*/)

7.JavaScript的数据类型

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.流程控制语句

8.JavaScript常用的对象介绍

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"));

9.JavaScript 函数的定义

方式一
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.JavaScript全局函数的使用

1.sNaN 检查某个值是否为数字
2.parseInt / parseFloat 解析字符串为整数 / 浮点数
3.eval 计算javascript字符串,并把它作为脚本代码来执行
  var result = eval("123+234");
  alert(result);
4.escape与unescape, encodeURI()与decodeURI()

知道更多...........

相关链接:最新W3C中JavaScript 教程



你可能感兴趣的:(2014-06-29 Web-Front的学习(3)-----JavaScript基础)