15、JS

1、弹窗与控制台输出
alert("123456");//弹窗显示123456
console.log("123456");//控制台输出123456
2、变量声明
var a=1;
var b="qwer";
const var PI=3.14;//常量定义
'use strict':严格检查模式,放在script标签中的最前面,严格模式下你不能使用未声明的变量。
局部变量建议使用let替代var
所有全局变量都绑定在window下,包括alert也属于window下
3、值比较

== 类型不同,值相同为true

=== 类型不同,值也相同为false

NaN not a number

4、新建对象
var person = {name:‘小江’,
            age:18//数组
            aihao:[‘抽烟’,‘喝酒’,‘烫头’]//方法,调用方法时必须带()
            age:function(){
                console.log("18");
            }
}

//定义一个student类
class student{
    //构造函数
    constructor(name){
        this.name=name;
    }
    hellp(){
        alert("hello");
    }
}
//对象创建
var st=new student("小江");

class newstudent extends student{
    constructor(name,age){
        supper(name);
        this.age=age;
    }
    say(){
        alert("我是小学生");
    }
}
//对象创建
var st2=new student("小明",3);

var now = new Date();//now为当前时间,可以通过now获取当前时间的具体项
5、数组
1.数组长度可变
2.数组截取slice(),相当于string的substring()
3.数组排序sort()
4.数组反转reverse()
5.打印拼接数组,使用特定的字符串连接join(‘-’)
6.数组便利
var map=new Map([["tom",100],["jack",90]])
var set=new Set([1,2,3,4,1,2,3])//set会去重,实际只存入1234
//便利map
for(let x of map){
console.log(x);
}
6、函数
//函数定义方法1
function abs(x,y,...rest){
    if(typeof x!=='number'){
        throw 'not a number';//手动抛出异常,当传的参数不是数子时,返回'not a number'
    }
    
    for (let i = 0; i < arguments.length; i++) {
        console.log(arguments[i]);//arguments是包含方法传进来的所有参数的数组
    }
    
    console.log(rest);//rest获取除了已定义的参数以外的所有参数
    
    if(x>0)
        return x;
    else{
        return -x;
    }
}
//函数定义方法2
var abs=function (x){
    if(x>0)
        return x;
    else{
        return -x;
    }
}

//调用,js可以传任意个参数,也可以不传参数
abs(-10);//10
7、Json格式转换
<!--新建一个test.html-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        //编写一个javascript对象
        var User={
            name:"小江",
            age:4,
            sex:"男"
        };
        console.log(User);//F12-控制台查看打印信息
        console.log("==========================================");
        //将js对象 转换成 json对象,str={"name":"小江","age":4,"sex":"男"}
        var str=JSON.stringify(User);
        console.log(str);
        console.log("==========================================");
        //将json对象 转换成 js对象,json={name:"小江",age:4,sex:"男"}
        var json=JSON.parse(str);
        console.log(json);
    </script>
</head>
<body>

</body>
</html>
8、操作POM对象
1.window:浏览器的窗口
2.navigator:封装了浏览器的信息
3.screen:封装了屏幕属性
4.location:代表当前页面的URL信息

//设置新的地址

location.assign(‘https://www.baidu.com/’)

5.document:当前页面,能获取网页的文档树节点、cookie
6.history:历史记录,上一个页面、下一个页面
9、操作DOM对象
1.获得Dom节点
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h2 id="h44">qwer</h2>
<div id="d1">
<h1>asdad</h1>
<h2 class="h2">awqd</h2>
<h2 id="h33">poiu</h2>
</div>
<script>
  var h11=document.getElementsByTagName("h1");//通过标签获取节点
  var h22=document.getElementsByClassName("h22");//通过class获取节点
  var h33=document.getElementById("h33");//通过id获取节点
  var d11=document.getElementById("d1");//通过id获取节点
</script>
</body>
</html>
2.更新节点
h33.innerHTML='<strong>1231<strong>'//修改html文本
h33.innerText='234234'//修改文本
h33.style.color='red'//修改样式颜色
3.删除节点
var chs=d11.children;//获取子节点。获取具体的子节点则增加索引就行
d11.removeChild(h33)//通过父节点删除子节点
4、插入节点
d11.appendChild(h44);//将h44追加到d11的后面
var newP=document.createElement('p');//创建新的标签,可以再进行追加操作
newP.id='newP';
newP.innerText='我是新P';
10、jQuery
1.选择器
$('P').click();//标签选择器
$('#id1').click();//id选择器
$('.class1').click();//class选择器
2.AJAX
1、概念

AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

2、简单使用

1.写jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>$Title$</title>
      <%--使用在线的CDN--%>
      <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    <script>
      function fun1(){
        $.post({
          url:"${pageContext.request.contextPath}/test",
          data:{'name':$("#username").val()},
          success:function (data,status){
            console.log("date="+data);
            console.log("status="+status);
          },
          error:function (data,status){
            console.log("data="+data);
            console.log("status="+status);
          }
        })
      }
      function a1(){
          $.post({
              url:"${pageContext.request.contextPath}/test3",
              data:{'username':$("#username2").val()},
              success:function (data){
                  $("#userInfo").html(data);
                  if (data.toString()==='OK'){
                      $("#userInfo").css("color","green");
                  }else {
                      $("#userInfo").css("color","red");
                  }
              }
          })
      }
      function a2(){
          $.post({
              url:"${pageContext.request.contextPath}/test3",
              data:{'password':$("#passowrd2").val()},
              success:function (data){
                  $("#pwdInfo").html(data);
                  if (data.toString()==='OK'){
                      $("#pwdInfo").css("color","green");
                  }else {
                      $("#pwdInfo").css("color","red");
                  }
              }
          })
      }

      $(function () {
          $("#btn").click(function () {
              $.post("${pageContext.request.contextPath}/test2",function (data) {
                  console.log(data)
                  var html="";
                  /*拼接jsp代码*/
                  for (var i = 0; i <data.length ; i++) {
                      html+= "<tr>" +
                          "<td>" + data[i].id + "</td>" +
                          "<td>" + data[i].name + "</td>" +
                          "<td>" + data[i].age + "</td>" +
                          "<td>" + data[i].sex + "</td>" +
                          "</tr>"
                  }
                  $("#content").html(html);
              });
          })
      })

    </script>
  </head>
  <body>

      用户名:<input type="text" id="username"/><br/>
      <input type="submit" value="提交" οnclick="fun1()"/><br/>
      <%--onblur:失去焦点事件--%>
      <br/>
      <br/>
      <br/>
      <input type="button" id="btn" value="获取数据"/>
      <br/>
      <br/>
      <table width="40%" align="left">
          <tr>
              <td>id</td>
              <td>姓名</td>
              <td>年龄</td>
              <td>性别</td>
          </tr>
          <tbody id="content">
          </tbody>
      </table>
      <br/>
      <br/>
      <br/>
  <p>
      用户名:<input type="text" id="username2" οnblur="a1()"/>
      <span id="userInfo"></span>
  </p>
  <p>
      <br/>
      密码:<input type="password" id="passowrd2" οnblur="a2()"/>
      <span id="pwdInfo"></span>
      <br/>
  </p>

  </body>
</html>

2.写pojo

package com.jiang.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data()
@AllArgsConstructor
public class User {
    private int id;
    private String name;
    private int age;
    private String sex;
}

3.写TestController

package com.jiang.controller;
import com.jiang.pojo.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
@RestController
@RequestMapping(produces = "application/json;charset=utf-8")
public class TestController {
    @RequestMapping("test")
    public String test(String name){
        System.out.println(name);
        if(name.equals("adc")){
            return "9876";
        }
        else {
            return "1234";
        }
    }

    @RequestMapping("test2")
    public ArrayList<User> test2() {
        ArrayList<User> users = new ArrayList<>();
        User user = new User(1, "小江", 3, "男");
        User user2 = new User(2, "小江2", 3, "男");
        User user3 = new User(3, "小江3", 3, "男");
        users.add(user);
        users.add(user2);
        users.add(user3);
        return users;
    }
    @RequestMapping("test3")
    public String test3(String username,String password){
        System.out.println("username="+username+"  password="+password);
        String msg="";
        if(username!=null){
            if(username.equals("adc")){
                msg= "OK";
            }
            else {
                msg=  "用户有问题";
            }
        }
        if(password!=null){
            if(password.equals("adc")){
                msg= "OK";
            }
            else {
                msg=  "密码错误";
            }
        }
        System.out.println(msg);
        return msg;
    }
}
3、js字符串去重
 function quchongstr(str){

    var a = str.match(/\S+/g);//等价于str.split(/\s+/g)// \s空白符,\S非空白符

    a.sort();

    for(var i=a.length-1;i>0;i--){

      if(a[i]==a[i-1]){

        a.splice(i,1);

      }

    }

    return a.join(" ");

  }

  var str = quchongstr("a a b a b e");
  console.log(str);
11、参考连接

在线jQuery引入

jQuery在线文档

http状态码

学习网站:

W3School

菜鸟教程

前端模板资源网站:

站长下载

脚本之家

模板之家

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值