文档章节

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

查封炉台
 查封炉台
发布于 2014/06/29 10:16
字数 1517
阅读 23
收藏 0

精选30+云产品,助力企业轻松上云!>>>

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能够做什么

4.JavaScript语言的组成

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

  •    核心(ECMAScript) 

  •    文档对象模型(DOM) 

  •    浏览器对象模型(BOM) 

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 教程



查封炉台
粉丝 49
博文 56
码字总数 138491
作品 0
景德镇
程序员
私信 提问
加载中
请先登录后再评论。
历史书单

编辑 目前专注于图像处理与深度学习 读书计划:每月一本java方向的书、一本机器学习python方向的书。 2019-02月 ★★★☆☆《Python编程实战》(10%)Github地址链接 2019-01月 ★★★☆☆《...

xingoo
2014/05/21
0
0
检查单 2014-06-20-01

上文:http://my.oschina.net/typhoon/blog/264162 下文:http://my.oschina.net/typhoon/blog/291238 技能相关项: 基础项: Web 及 UI : 更多: [尚未安排] 在线版简历中添加“经验”、“...

自由狼-台风
2014/06/20
45
0
web前端开发分享-css,js入门篇

学习没有捷径,但学习是有技巧与方法。 一,css入门篇: 推荐书籍:css哪些事儿,精通css。 理由:css那些事儿,他是一本介绍css基础类的书,是入门的经典读物。 系统的介绍了css的选择符,伪...

osc_cyiu3qx7
2018/06/29
7
0
HTML5视频教程,HTML5项目实战,HTML5中文指南,HTML5使用手册

HTML5视频教程,HTML5项目实战,HTML5中文指南,HTML5使用手册。 超过2G 的 HTML5 视频教程免费分享,免费下载! 尚硅谷前端HTML5视频_HTML & CSS 核心基础教程(103集实战教学,从入门到精通...

osc_tuutsk8t
2018/06/24
15
0
js useful skills blogs

js useful skills blogs blogs https://davidwalsh.name/tutorials/javascript https://www.ruanyifeng.com/blog/javascript/ http://www.ruanyifeng.com/blog/developer/ https://css-trick......

osc_3hydc7dn
2019/07/04
6
0

没有更多内容

加载失败,请刷新页面

加载更多

Maven中dependencyManagement和依赖关系之间的区别

问题: What is the difference between dependencyManagement and dependencies ? dependencyManagement和dependencies什么区别? I have seen the docs at Apache Maven web site. 我已经在......

富含淀粉
58分钟前
7
0
Confluence 如何查看页面 ID

如果你希望查看页面的 ID 你有 2 个方法。 例如,你希望查看 https://www.cwiki.us/display/CONFLUENCEWIKI/Get+started 页面的 Page ID 的话。 如果你的标题栏没有特殊字符,那么将会使用英...

honeymoose
今天
11
0
Linux系统 Centos7 环境基于Docker部署Rocketmq服务

消息队列 基本概述 MQ,Message Queue,基于TCP协议构建的简单协议,区别于具体的通信协议。 基于通信协议定义和抽象的更高层次的通信模型,一般都是生产者和消费者模型,又或者说服务端和客户端...

mazhilin
今天
12
0
我可以在.gitconfig中为自己指定多个用户吗? - Can I specify multiple users for myself in .gitconfig?

问题: In my ~/.gitconfig , I list my personal email address under [user] , since that's what I want to use for Github repos. 在~/.gitconfig ,我在[user]我的个人电子邮件地址,因......

法国红酒甜
今天
19
0
C++11好用的写法

https://stackoverflow.com/questions/12944002/capture-by-value-class-members

剑是SR剑
今天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部