前端 (js)

##动态页面

var 定义的是全局变量

let 是局部变量

const 定义的是常量

#动态页面

后端如何解析前端url的地址值

 public static void main(String[] args) {
        String url = "http://127.0.0.1:8848/cgb2104/center?pwd=1&qpwd=1&num=1";
         //通过截取?进行截取右边的下标为[1]
        String[] a = url.split("\\?");
             //由于浏览器都是字符串  所以打印的时候要用tostring
        System.out.println(Arrays.toString(a));
             //定义截取 ? 右边 的字符串
        String b = a[1];
               //通过&的符号进行截取
        String[] s = b.split("&");
               
        System.out.println(Arrays.toString(s));
               //定义map集合  ConcurrentHashMap<>();币hashmap较好
           Map<String,String> map= new ConcurrentHashMap<>();
                // 将截取后的字符串进行遍历
       for (String ss: s ){
           String[] split = ss.split("=");    //通过=进行截取
           //将等号切完之后, 一个属性一个相应的值为一个数组,所以就变成了很多个数组;
           String key=split[0];   //定义key和value
          String value =split[1];
           map.put(key, value);   //将key和value存到map集合中
           System.out.println(map);
       }

    }


}

后端如何与数据库进行交互的

浏览器向服务器发送了什么请求信息在点开F12之后,里面有表头信息,请求路径, 请求 和响应等

js(javascrapt)的作用

 JS javascript脚本语言    实现页面前端和后端的数据交互,形成动态网页

js就是动态网页 : 比如当我们注册一个博客 ,那么在每个博客的账号里有不同的内容 , 所以如何动态的获取数据 ,这就是js的主要作用 ;

js可以用来编写大型的程序 , 但是一门基于对象和事件驱动 的弱脚本语言(就是只能在浏览器中使用)

基于对象:它不仅可以创建对象,也能使用现有的对象。

事件驱动:在JS中,大部分情况下都是通过事件触发驱动函数执行的,从而实现特定的功能。

脚本语言:在网络前端开发环境下,用于嵌入在客户端浏览器中的一段小程序

js的优势

(1)良好的交互性

(2)一定的安全性(JS被强制的要求,不能访问浏览器以外的东西,只能访问浏览器和浏览器内部的资源)

(3)跨平台性(Java语言具有跨平台性,是因为有虚拟机)

只要有浏览器的地方都能执行JS

js的三种语法

内部 :就是在head的标签内使用script ; 引入body里的内容

外部: 通过script标签进入外部js文件

外部引入js代码

首先创建js文件:命名为1.js,并且将js代码写入到该文件中

<script src="外部的js的文件">

function fn(){

       alert("JS的第2种引入方式");

}

然后html页面中引入上面创建的js文件

<head>
       <meta charset="utf-8"/>
       <script>/* JS代码 */
              function fn(){
                     alert("JS的第1种引入方式");
              }
       </script>
</head>
<body>
       <div id="div1" onclick="fn();">Hello JavaScript</div>
</body>

内部引入js代码

将js代码写入到head标签的script标签里面

<head>
    <title>hello</title>
       <meta charset="utf-8"/>
       <script>/* JS代码 */
              function fn(){
                     alert("111");
              }
       </script>
</head>
<body>
       <a href="#" onclick="fn();">鼠标点击事件...</a>
</body>

单击事件:点击"我是div" 一次会弹出弹框

<head>
    <title>hello</title>
	<meta charset="utf-8"/>
	<script>/* JS代码 */
alert(100);
		function fn(){
			alert("111");
		}
	</script>
</head>
<body>
	<a href="#" onclick="fn();">鼠标单击事件...</a>
</body>

双击事件: 就是点击两次"我是div"就会出现弹框

<!DOCTYPE html>
<html>
<head>
    <title>hello</title>
	<meta charset="utf-8"/>
	<script>/* JS代码 */
alert(100);
		function fn(){
			alert("111");
		}
	</script>
</head>
<body>
	<a  ondblclick="fn();">鼠标点击事件...</a>
</body>

 

网站发送服务器的

js的打印语句alert 和 console.log的区别

1 ):alert和console.log其实是一样的用法,只是alert以弹出框形式呈现,而console.log在控制台输出而已。2):console.log() 可以打印任何类型的数据。而 alert() 只能输出string,如果alert输出的是对象会自动调用 toString() 方法。如果想 console.log() 输出的与alert相同,需要调用 toString()。

在js中类型用var类型包括了所有的类型 ; 数值类型-number , 字符串类型-string, 布尔类型-boolean

undefined , null,对象等类型

js的运算符

JS中的运算符和Java中的运算符大致相同

算术运算符: +,-,*,/,%,++,--

赋值运算符: =,+=,-=,*=,/=,%=

比较运算符: ==,!=,===,!==,>,>=,<,<=

位运算符: & , |

逻辑运算符: && ,||

前置逻辑运算符: ! (not)

三元运算符: ? :

% 是除数的余数, &&如果有一个为false则直接判断为false  || 如果有一个true则全部为true  

a+=4就相当于 a=a+4

typeof打印的是该值的类型

var i = 3;

console.log(typeof i);          打印的值是number而不是3

在js中==比较的只是值   而===比较的是类型和值

三元表达式 : 如果为true则调用表达式1  false调用表达式2

在js中类型用var类型包括了所有的类型 ; 数值类型-number , 字符串类型-string, 布尔类型-boolean

undefined , null,对象等类型

 var a = 1;

a=true;

a=100;

alert(a) ;   //100

这样的情况则是打印最后赋予的值

在js中在打印框内动态输入数据的关键字是prompt

var a=prompt("请输入动态数据:")

console.log(a);

switch....case

注意: 每个case后面都要加一个break;

var day = 3;

switch( day ){

    case 1:

       alert("今天是星期一");

       break;

    case 2:

       alert("今天是星期二");

       break;

    case 3:

       alert("今天是星期三");

       break;

    case 4:

       alert("今天是星期四");

       break;

    case 5:

       alert("今天是星期五");

       break;

}

1.19   JS数组

JS数组用于在单个的变量中存储多个值(其实就是一个容器)。

JS中的数组可以存储例如:数值、字符串、布尔值、undefined、null、对象、函数等

1.19.1    JS数组的声明方式

方式一: 通过new Array构造函数声明数组

var arr1 = new Array();//声明一个空数组

var arr2 = new Array("abc", "hello", true);//声明一个具有初始值的数组

alert(arr2.length);//3

方式二 : 通过数组直接量声明数组

var arr4 = [];//声明一个空数组

alert(arr4.length);//0

arr4 = ["abc", "hello", true];//声明一个具有初始值的数组

alert(arr4);

1.19.2    数组需要注意的细节

(1)JS数组中可以存放任意的数据类型

(2)JS中的数组长度可以被改变

var arr1 = [];//声明一个空数组

console.log( arr1.length ); //此时数组长度为 0

arr1.length = 10;

console.log( arr1.length ); //此时数组长度为 10

arr1[99] = "abc";

console.log( arr1.length ); //此时数组长度为 100

arr1.length = 0;

console.log( arr1.length ); //此时数组长度为 0

声明:function 函数名称([参数列表]){ 函数体 }

调用: 函数名称([参数列表]);

案例:

function a(){ //无参函数定义

       var a = [1,2,3,4,5]; //定义数组

       var sum =0; //定义变量

       for (var i = 0; i <a.length; i++) {

              if(a[i]%2==0){

                     sum+=a[i];

              }

       }

       alert(sum);

}

a();//函数调用

function b(x,y){//定义含参函数

       alert(x+y);

}

b(1,"2");//函数调用

b(1,2);//函数调用

声明:var 函数名称 = function([参数列表]){ 函数体 }

调用: 函数名称([参数列表]);

案例:

// fn2();  //这种方式定义的函数还未加载就调用,会报错.方式1没问题

var fn2 = function(){ //定义无参函数

       alert(100);

}

fn2();  //函数调用

var fn3 = function(x,y){  //定义含参函数

       alert(x*y);

}

fn3(0.32,100);//函数调用

fn2("王海涛");参数个数不匹配,王海涛undefined

var e = function(x,y){ //定义有返回值含参函数

       return x-y;

}

alert("函数返回值:::"+ e(1.1,10.9) ); //函数调用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值