一、JavaScript的概念:是基于对象和事件的脚本语言

  1、特点:

    a)、安全性。

    b)、跨平台性(只要可以解释JS的浏览器就可以执行,和平台无关)  

  2、JavaScript与Java的区别:

    a)、JS是NetScape公司产品,Java是Oracle公司
    b)、JS是基于对象,Java是面向对象
    c)、JS只需解释就可以执行,Java需要先编译成字节码文件再执行
    d)、JS是弱类型,Java是强类型

  3、JavaScript与HTML的结合:

    a)、JS代码存放在标签<script>...</script>
    b)、使用script标签的src属性引入一个js文件(<script type="text/javascript" src="JS文件"></script>)

  4、<script>的存放位置:

    a)、HTML文件的<head>标签中

    b)、HTML文件中<body>标签中

二、JavaScript语法:

  1、变量通过关键字var来定义,弱类型不需要指定具体的数据类型(注意:JS中特殊常量值undefined,当变量没有初始化就被使用,该变量的的值就是undefined)
        var v;
        v = v + 5;
        alert(v);// 结果是NaN
  2、语句(与Java语句格式相同):逻辑运算符:&& ||
    if语句:
          注意:var x = 3;
            if(x==4)//可以进行比较运算
            if(x=4)//可以进行赋值运算,而且同样可以进行判断
            原因:在JS中0可以表示false,非0可以表示true(通常用1表示),因此if(x=4)结果为true   。非null为true,null为false
    switch语句:switch(x),其中x可以接收字符串
    循环语句(while\do...while\for)
    for(变量 in 对象){...}
  3、函数:
    一般函数:格式:function 函数名(形式参数...){...}
      注意:调用有参数的函数时,但没有给其传值,函数一样可以运行,或者调用没有参数的函数并给其传值,该函数一样可以运行。
         在函数中有一个参数数组对象(arguments),该对象将传递的参数都封装在一个数组中
         在函数中定义变量时没有使用var关键字,那么执行该函数后,此变量就成为一个全局变量
         函数在调用时的写法:
         var s = method();// s变量接收method函数的返回值
         var s = method;// s和method代表同一个函数,那么该函数也可以通过s()的方式调用
    匿名函数:格式:function(){...}  (或者说是直接将函数作为参数直接传递,不进行封装)
           例:var demo = function(){...}
           调用:demo();
  4、数组
    特点:长度是可变的,可以存任意元素(数组里存放的元素类型可以不同)
    定义格式:var arr = new Array();
         arr[0] = "hello";
         arr[1] = 1;
         arr[2] = true;

         输出:var arr = ["123", 23, true];

三、JavaScript语句示例:

  1、在<head>标签中编写:

 <!-- 鼠标单击显示按钮后弹出提示对话框,提示内容为:JavaScript示例 -->
<html>
<head>
<title>JavaScript示例</title>
<script type="text/javascript">
function test(){
alert("JavaScript示例");
}
</script>
</head> <body>
<input type="button" value="显示" onclick="test()">
</body>
</html>

  2、外部 .js 文件中编写

    a)、创建一个  .js 文件:如文件名为  testJavaScript.js 类容为:

function test(){
alert("JavaScript示例");
}

    b)、在<head>标签中利用<script>标签引入 testJavaScript.js文件,便可以达到与上例相同的结果。

 Transitional//EN">
<!-- 鼠标单击显示按钮后弹出提示对话框,提示内容为:JavaScript示例 -->
<html>
<head>
<title>JavaScript示例</title>
<script type="text/javascript" src="testJavaScript.js"></script>
</head> <body>
<input type="button" value="显示" onclick="test()">
</body>
</html>

四、DOM(document object model):文档对象模型

  1、DHTML:是多个技术的综合体,称为动态HTML
    HTML:将数据进行封装
    CSS:负责标签中数据的样式
    DOM:将标签封装成对象
    JS:将以上三者进行融合,通过程序来操作这些对象,完成动态效果

  2、节点:根据 DOM,HTML 文档中的每个成分都是一个节点。

  DOM 是这样规定的:

      • 整个文档是一个文档节点
      • 每个 HTML 标签是一个元素节点
      • 包含在 HTML 元素中的文本是文本节点
      • 每一个 HTML 属性是一个属性节点
      • 注释属于注释节点

    父级节点:parentNode
    子节点:childNodes
    兄弟节点:
      上一个兄弟节点:previousSibling
      下一个兄弟节点:nextSibling

五、JavaScript中的常见对象中

  1、Document对象:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Document节点</title>
<script type="text/javascript">
function test(){
/* 将String类型的数据强转为number型
document.getElementsById返回的是一个具体的对象
*/
var sum= Number(document.getElementById("data1").value);
sum+= Number(document.getElementById("data2").value);
alert(sum);
}
function test1(){
/* 将String类型的数据强转为number型
document.getElementsByName返回的是一个数组对象
*/
var sum = document.getElementsByName("data1")[0].value;
sum -= document.getElementsByName("data2")[0].value;
alert(sum);
}
</script>
</head> <body>
数值一:<input type="text" id="data1" name ="data1" value="1"/>
数值二:<input type="text" id="data2" name ="data2" value="1"/>
<input type="button" onclick="test()" value="计算加" />
<input type="button" onclick="test1()" value="计算减" />
</body>
</html>
close() 关闭用 document.open() 方法打开的输出流,并显示选定的数据。
getElementById() 返回对拥有指定 id 的第一个对象的引用。
getElementsByName() 返回带有指定名称的对象集合。
getElementsByTagName() 返回带有指定标签名的对象集合。
open() 打开一个流,以收集来自任何 document.write() 或 document.writeln() 方法的输出。

  2、Date对象:

Date() 返回当日的日期和时间。
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getFullYear() 从 Date 对象以四位数字返回年份。
getYear() 请使用 getFullYear() 方法代替。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
 function test(){
var da = new Date(); /*返回当前日期和时间*/
alert(da.getDate()); /*返回一个月中的某天*/
alert(da.getDay()); /*返回一周中的某天*/
alert(da.getHours()); /*返回对象的小时数*/
};

4、JavaScript的更多相关文章

  1. 前端网络、JavaScript优化以及开发小技巧

    一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...

  2. JavaScript学习笔记(三)——this、原型、javascript面向对象

    一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ...

  3. JavaScript学习总结(三)——this、原型、javascript面向对象

    一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ...

  4. javascript实用技巧、javascript高级技巧

    字号+作者:H5之家 来源:H5之家 2016-10-31 11:00 我要评论( ) 三零网提供网络编程. JavaScript 的技术文章javascript实用技巧.javascript高级技巧 ...

  5. 新手理解HTML、CSS、javascript之间的关系

    http://www.cnblogs.com/dreamingbaobei/p/5062901.html 工作多年,一直忙忙碌碌的应用各种技术,现在不忙了,问问自己究竟在做什么,究竟会什么竟答不上来, ...

  6. Web编程基础--HTML、CSS、JavaScript 学习之课程作业“仿360极速浏览器新标签页”

    Web编程基础--HTML.CSS.JavaScript 学习之课程作业"仿360极速浏览器新标签页" 背景: 作为一个中专网站建设出身,之前总是做静态的HTML+CSS+DIV没 ...

  7. Python之路-python(css、JavaScript)

    css JavaScript 一.CSS 分层: position: fixed;(固定到页面的具体位置) 例如:返回顶部 <!DOCTYPE html> <html lang=&q ...

  8. 利用CSS、JavaScript及Ajax实现图片预加载的三大方法

    预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布 ...

  9. Css、javascript、dom(二)

    一.css常用标签及页面布局 1.常用标签 position(定位) z-index(定位多层顺序) background(背景) margin(外边距) padding(内边距) font-size ...

随机推荐

  1. Vsphere初试——基本安装

    现有工具: 一台Dell PowerEdge R820服务器 VMware-VMvisor-Installer-5.5.0.update01-1623387.x86_64(ESXi).iso VMwa ...

  2. delphi WebBrowser控件上网页验证码图片识别教程(一)

    步骤一:获取网页中验证码图片的url地址 在delphi中加入一个BitBtn和一个memo以及WebBrowser控件实现网页中验证码图片的url地址的获取 程序如下:procedure TForm ...

  3. ubuntu下安装加装DNS

    感觉在ubuntu下网速特别的慢,所以网上找了下解决方案,本地缓存域名解析相关信息. 首先,安装dns服务 命令: sudo apt-get install dnsmasq 编辑dnsmasq的配置文 ...

  4. Caffe源码解析6:Neuron_Layer

    转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/ NeuronLayer,顾名思义这里就是神经元,激活函数的相应 ...

  5. 【转】40个良好用户界面Tips

    一个良好的用户界面应具有高转换率,并且易于使用.但要用户体验良好并不容易做到,下面我们整理了40个良好用户界面Tips,希望能对你有帮助! 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的 ...

  6. 解决win10卡顿现象

    前两天打开了windows defender,想着既然是window自带的防护工具,应该效果不错.经过测试之后 ,发现这个要占用很大内存,得不偿失.如果想要保证系统安全,甚至腾讯电脑管家做的都比这个w ...

  7. bzoj[3238][ahoi差异]

    Description Input 一行,一个字符串S Output 一行,一个整数,表示所求值 Sample Input cacao Sample Output HINT 2<=N<=5 ...

  8. sublime 插件

    由于之前的代码可视化方案太复杂,分析时间太长,不实用,另一方面是而且工作以后业余时间大大减少,因此决定放弃原有路线,从工作中最迫切的需求着手,逐步构建一个实用的工具. 新的方法仍然依赖understa ...

  9. iPhone添加邮箱

    阿里云邮箱设置 手机自带的电子邮件客户端该如何添加阿里云邮账号呢?这里以iPhone4s和安卓系统为例,分别进行添加阿里云邮箱帐号的添加.   官网是这么介绍的:   一.如下以iPhone4s为例, ...

  10. bootstrap-全局css样式

    bootstrap-全局css样式   1.bootstrap是一个前端框架 2.基本模板:viewport视口可以解决移动端设备网页自适应问题 3.版心(.container)  流式版心(.con ...