文档章节

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

查封炉台
 查封炉台
发布于 2014/06/29 10:16
字数 1517
阅读 20
收藏 0
点赞 0
评论 0

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
景德镇
程序员
前端学习之路(从入门到入坑...)

学习前端两年多了,拿了阿里巴巴实现offer,想结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面俱到,只是作为入门参考...

阿小庆 ⋅ 06/14 ⋅ 0

给Web前端初学者的一些建议和学习方法路线

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰 ⋅ 05/24 ⋅ 0

WEB前端学习面试加分题:同学,你了解TypeScript吗?

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰 ⋅ 05/11 ⋅ 0

WEB前端面试的10个最基础JavaScript问题!

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰 ⋅ 05/27 ⋅ 0

WEB前端学习javascript学习笔记

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰 ⋅ 05/25 ⋅ 0

WEB前端学习JS灵魂之问:JS为什么是单线程的?

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰 ⋅ 05/27 ⋅ 0

DOM系列:浏览器与DOM 主标签

最近回过头来在学习JavaScript中的DOM知识,随着学习进度的向前推移,越发感觉DOM知识点较多。为了能更好的系统了解清楚DOM相关的知识,我打算重新将DOM的学习划入到DOM系列当中。那么今天将...

一个敲代码的前端妹子 ⋅ 05/28 ⋅ 0

PHP学习路线图 最全PHP自学指南

对于广大零基础的PHP自学者,往往不知道如何系统的学习PHP,导致平白浪费了很多时间。本文将为大家带来最详细的php学习路线图,同时还会附上相应的权威教程,让广大PHP自学者少走许多弯路。 ...

W3Cschool小编 ⋅ 04/24 ⋅ 0

学习Javascript的8张思维导图

分别归类为:  javascript变量  javascript运算符  javascript数组  javascript流程语句  javascript字符串函数  javascript函数基础  javascript基础DOM操作  javascript正则表达式...

thinkyoung ⋅ 2014/09/23 ⋅ 0

python_day14_前端_JS-重写

说明 ECMA(欧洲计算机制造协会)   ECMA(欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览...

812374156 ⋅ 05/25 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 33分钟前 ⋅ 0

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 今天 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 今天 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 今天 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部