jsp服务端,js客户端.

javascript 是基于对象和事件驱动的脚本语言.

特点:

  1. 交互性
  2. 安全性(不允许直接访问本地硬盘)
  3. 跨平台性(只要是可以解析java的浏览器都可以执行,和平台无关)

各大浏览器都有解析该语言的解析引擎。

js是基于对象的,java是面向对象。

js只需解释就可以执行。java需要编译成字节码文件再执行。

js是弱类型,java是强类型。

jscript是微软的和javascript很相似。javascript没有帮助文档。

微软的帮助文档是很强的。

javascript 和html语言的结合。

Jquery是JavaScript封装的一个类库。

html中可以有多个表单form,这些表单用标签<forms></forms>括起来,每个表单叫<form></form>,用一个form[]数组存储,form[0]代表第一个表单,form[1]代表第二个表单。

window对象常用方法:(window.alert(),window可以省略)

alert(‘信息’) 消息框

prompt(‘提示信息’,默认值)标准输入框

confirm()确认框

open()打开 一个新窗口

close()关闭窗口

/*

* 通常高级程序设计语言所包含的语法内容:

* 1,关键字:该种语言中被赋予了特殊含义的单词。

* 2,标示符:用于标示数据和表达式的符号。通常可以理解为在程序中自定义的名称。比如变量名,函数名。

* 3,注释:注解说明解释程序。用于调试程序。

* 4,变量:用于标示内存中一片空间。用于存储数据,该空间的中的数据是可以变化的。

*什么时候使用变量,当数据不确定的时候。

* 5,运算符:可以让数据进行运算的符号。

* 6,语句:用于对程序的运行流程进行控制的表达式。

* 7,函数:用于对功能代码进行封装,便于提高复用性。

* 8,数组:对多数据进行存储,便于操作。就是传说中容器。

* 9,对象:只要是基于对象的语言,或者是面向对象的语言,就存在着对象的概念,对象就是一个封装体。既可以封装数据又可以封装函数。

* 这些都是高级程序设计语言具备的共性内容,只不过各种语言对这些内容的表现形式有所不同。

* 但是使用基本思想是一致。

*/

在javascript中单引号和双引号都是表示字符串,单引号和双引号之间可以相互嵌套。

var x= 3 var y =4;编译错误

var x= 3

var y =4;分两行写就编译正确。

别挑战javascript的极限。人家是弱类型语言,也不要欺负人家。

<!--

js和html相结合的方式:

1,将javascript代码封装到<script>标签中。

2,将javascript代码封装到js文件中,并通过<script>中的src属性进行导入。

注意:如果<script>标签中使用src属性,那么该标签中封装的javascript代码不会被执行。

所以通常导入js文件都是用单独<script>来完成。

-->

<!--导入一个js文件-->

<!--script type="text/javascript" src="demo.js"></script-->

这个<script></script>标签中已经导入了demo.js文件了,(js中提供的是函数库,不是类库,就和java中jar包一样的。)再在<script>中写javascript程序,这些程序是不会被执行的。所以导入js文件都是单独<script>来完成的。

<!--封装javascript代码。-->

<script type="text/javascript">

//                         alert("hello javascript");

</script>

<!--演示javascript语法通用内容-->

 <script type="text/javascript">

                             /*

                              * 通常高级程序设计语言所包含的语法内容:

                              * 1,关键字:该种语言中被赋予了特殊含义的单词。

                              * 2,标示符:用于标示数据和表达式的符号。通常可以理解为在程序中自定义的名称。比如变量名,函数名。

                              * 3,注释:注解说明解释程序。用于调试程序。

                              * 4,变量:用于标示内存中一片空间。用于存储数据,该空间的中的数据是可以变化的。

                              *   什么时候使用变量,当数据不确定的时候。

                              * 5,运算符:可以让数据进行运算的符号。

                              * 6,语句:用于对程序的运行流程进行控制的表达式。

                              * 7,函数:用于对功能代码进行封装,便于提高复用性。

                              * 8,数组:对多数据进行存储,便于操作。就是传说中容器。

                              * 9,对象:只要是基于对象的语言,或者是面向对象的语言,就存在着对象的概念,

                              * 对象就是一个封装体。既可以封装数据有可以封装函数。

                              *

                              * 这些都是高级程序设计语言具备的共性内容,只不过各种语言对这些内容的表现形式有所不同。

                              * 但是使用基本思想是一致。

                              */

 </script>
        <script type="text/javascript">
            /*
             * js中定义变量。使用到关键字。
             * 这个关键字就是var
             */
            //定义变量。Js是弱类型的。
            var x = 4;//var不写也行,因为js是非严谨的语言,但是我们开发的时候建议都按照严谨的方式来定义。
            x = "abc";//重新赋值为字符串abc。
            x = 3.45;//赋值为小数。其实也是数字类型。
            x = true;//赋值为boolean类型。
            x = 'c';//赋值为字符串c。

//            alert("x="+x);//这是一个函数,将具体的参数通过对话框进行显示。

        </script>
        <script type="text/javascript">
            /*
             * 运算符。
             * 1,算术运算符。
             *         + - * / % ++ --
             * 2,赋值运算符。
             *         =  += -= *=  /= %=
             * 3,比较运算符:运算的结果要么是false要么是true。
             *         > < >= <= != ==
             *
             * 4,逻辑运算符。用来连接两个boolean型的表达式。
             *         !  &&  ||
             * 5,位运算符。
             *         &  |  ^  >> << >>>   js中单与和单或是位运算符,不是逻辑运算符
             * 6,三元运算符。
             *         ? :
             */

            //1,算术运算符演示。
            var a = 3710;
//            alert("a="+a/1000*1000);//a=3710;    js是弱类型语言,注意这里和java的区别

            var a1 = 2.3,b1 = 4.7;
//            alert("a1+b1="+(a1+b1));

//            alert("12"-1);//11
//            alert("12"+1);//121
//            alert(true+1);//2 因为在js中false就是0,或者null,非0,非null。就是true。默认用1表示。
//            alert(2%5);//2

            var n = 3,m;
            m = ++n;
//            alert("n="+n+",m="+m);
//        =================================================

            // 2,赋值运算符
            var i = 3;
//            i = i+2;
            i+=2;
//            alert("i="+i);
       在js中i = i+2;和i+=2; 就没有任何区别了,在java中由于有类型的原因是有区别的。
//        =================================================
            // 3,比较运算符。
            var z = 3;
//            alert(z!=4);

//        =================================================
            // 4,逻辑运算符。
            var t = 4;

//            alert(t>7 && t<6);
//            alert(!true);
alert(!t);        //false     js和java中的逻辑运算符是有区别的。js中“&”是位运算。
//        =================================================
            // 5,位运算符。
            var c  = 6;
//            alert(c&3);//2    异或:两边相同则为假,两边不同为真。

//            alert(5^3^3);//5  一个数异或同一个数两次,结果还是这个数。

//            alert(c>>>1);//6/2(1);  6除以2的一次方
//            alert(c<<2);//24    6乘以2的2次方。
//        =================================================
            //6,三元运算符。    

//            3>0?alert("yes"):alert("no");
//            alert(3>10?100:200);
    </script>

if else和三元运算符的区别,if else可以没有结果,三元运算符必须有结果。

    <script type="text/javascript">
            /*
             * 一些细节:
             * 1,undefined:未定义。其实它就是一个常量。
             */
            var xx;
//            alert(xx);//undefined
//            alert(xx==undefined);//true

            //要想获取具体的值的类型。可以通过typeof来完成。
//            alert(typeof("abc")=='string');//string
//            alert(typeof(2.5)=='number');//number//判断类型。
//            alert(typeof(true));//boolean
//            alert(typeof(78));//number
//            alert(typeof('9'));//string
        </script>
         <script type="text/javascript">
             /*
              * 语句:
              * 1,顺序结构。
              *
              * 2,判断结构。
              *         代表语句: if.
              * 3,选择结构。
              *         switch
              * 4,循环结构。
              *         while  do while  for
              * 5,其他语句。
              *         break:跳出选择,跳出循环。
              *         continue:用于循环语句,结束本次循环继续下次循环。
              */

 //            alert("abc1");
 //            alert("abc2");

 //            ------------------------------------------------
             /*
             var x = 3;
 //            if(x=4){//注意。
             if(4==x){//建议将常量放左边。以报错来修正代码。赋值常量只能拿放右边,判断放左边右边都可以。
                 alert("yes");
             }else{
                 alert("no");
             }

             if(x>1)
                 alert("a");
             else if(x>2)
                 alert("b");
             else if(x>3)
                 alert("c");
             else
                 alert("d");
                 这里只输出a,因为只要满足一个就进入,其他的不再判断。
             */    

 //            ------------------------------------------------
             /*
             //选择结构。
             var x = "abc";
             switch(x){
                 default:    //default总是最后执行的,尽管default是在最前面。
                     alert("c");
                     break;//省略。此处default注意省略会出现的现象。
                 case "kk":
                     alert("a");
                     break;
                 case "abc":
                     alert("b");
                     break;
             }
             */
         当我们对结果是一段空间,或者是boolean类型进行运算的时候,用if,当结果是固定的几个值的时候,既可以用if也可以用switch,但是建议用switch,因为switch都加载进了内存,答案都在内存中,进行选择就可以,效率相对较高,不过这些效率可以忽略不计。

             //循环结构。
             /*
             var x = 1;
             document.write("<font color='blue' >");
             while(x<10)
             {
 //                alert("x="+x);
                 //将数据直接写到当前页面当中。
                 document.write("x="+x+"<br/>");
                 x++;
             }
             document.write("</font>");

             for(var x=0; x<3; x++){
                 document.write("x="+x);
             }
             */

             /*
             w:for(var x=0; x<3; x++){
                 for(var y=0; y<4; y++){
                     document.write("x==="+x);
                     continue w;//跳出当前循环。
                 }
             }
             */
     </script>

[未完成]关于JavaScript总结的更多相关文章

  1. python 全栈开发之旅

    目录 python 基础语法 python 数据类型(未完成) python 内置函数(未完成) python 常用标准库(未完成) python 类(未完成) python 进程.线程.协程(未完成 ...

  2. javascript 深入浅出 (未完成4-17)

    慕课网javascript总结 课程地址 课程大纲: 一.数据类型 二.表达式和运算符 三.语句 四.对象 五.数组 六.函数 七.this 八.闭包和作用域 九.OOP 十.正则与模式匹配 ---- ...

  3. JavaScript技巧(未完成)

    1.在js脚本语言中使用HTML语言中的< >号,但是在XHTML中却不能使用这类符号,可以将<号转换成&lt符号(XHTML比HTML跟严格),这种做法比较不好理解,可以用 ...

  4. JavaScript中的Promise【期约】[未完成]

    JavaScript中的Promise[期约] 期约主要有两大用途 首先是抽象地表示一个异步操作.期约的状态代表期约是否完成. 比如,假设期约要向服务器发送一个 HTTP 请求.请求返回 200~29 ...

  5. JavaScript 设计模式的七大原则(未完成)

    设计模式(面向对象)有七大设计原则,分别是: 开闭原则:对扩展开放,对修改关闭 单一职责原则:每一个类应该专注于做一件事情 里氏替换原则:父类存在的地方,子类是可以替换的 依赖倒转原则:实现尽量依赖抽 ...

  6. Javascript图片预加载详解

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

  7. [译]理解Javascript的异步等待

    原文链接: https://ponyfoo.com/articles/understanding-javascript-async-await 作者: Nicolás Bevacqua 目前async ...

  8. javascript的ajax

    AJAX 一 AJAX预备知识:json进阶 1.1 什么是JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON是用字符串来表示Javas ...

  9. 【JavaScript】--ajax

    1 什么是AJAX AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传 ...

随机推荐

  1. codeforce 630N Forecast

    N. Forecast time limit per test 0.5 seconds memory limit per test 64 megabytes input standard input ...

  2. 汇总:Linux下svn命令大全

    svn(subversion)是近年来崛起的版本管理工具,svn服务器有2种运行方式:独立服务器和借助apache.2种方式各有利弊.不管是那种方式,都需要使用各种命令来实现.在本文中,haohtml ...

  3. C#中ArrayList和string,string[]数组的转换

    转载原地址: http://www.cnblogs.com/nextsoft/articles/2218689.html 1.ArrarList 转换为 string[] : ArrayList li ...

  4. Java日期处理类

    1.Date java.util.Date 2.Calendar 日历类,通过getInstance()获取实例对象,可以获取年月日时分秒 3.SimpleDateFormat 日期格式化,forma ...

  5. ID生成器详解

    概述 ID 生成器也叫发号器,它的主要目的就是"为一个分布式系统的数据object产生一个唯一的标识",但其实在一个真实的系统里可能也可以承担更多的作用.概括起来主要有以下几点: ...

  6. Windows 下如何设置 只允许固定IP远程访问

    通过设置IP安全策略限制固定IP访问 说明: (1)以XP环境为例,步骤:先禁止所有IP,再允许固定IP访问. (2)配置过程中很多步骤图是重复的,一些没价值的图就省略了: (3)光看的话可能中间重复 ...

  7. VirtualBox虚拟磁盘扩容

    1. cmd中运行 VBoxManage modifyhd D:\我的资料库\Documents\VirtualBox VMs\ubuntu\ubuntu.vdi --resize 提示错误  Syn ...

  8. request,response,session

    1.request.getParameter("key")接受的是来自客户登陆端的数据,接受的是post或get方式传送的value. 2.请求的默认字符集是ISO-8859-1, ...

  9. Android下结束进程的方法

    转自:http://www.cnblogs.com/crazypebble/archive/2011/04/05/2006213.html 最近在做一个类似与任务管理器的东西,里面有个功能,可以通过这 ...

  10. C#操作MySQL数据库-----HelloWorld

    这里采用在visual studio 2010中通过MySql.Data.dll.MySql.Web.dll来连接mysql数据库, 之后便进行数据的插入和查询. Program.cs文件内容如下: ...