js

转帖 JS的基础语法2

你。 提交于 2020-02-24 07:14:04
条件语句(if、switch)、 循环语句(while、do…while、 for … in)、跳转语句(break,continue) 1、条件语句 Ø if语句 javascrip中的if语句 var num = 10; // if形式 if(num > 9){ console.log("该数大于9"); } // if-else 形式 if(num > 9){ console.log("该数大于9"); }else{ console.log("该数小于等于9"); } // if-else if if(num > 10){ console.log("该数大于10"); }else if(num <= 10){ console.log("该数小于等于10"); } // if-elseif(n个)-else if(num > 10){ console.log("该数大于10"); }else if(num < 10){ console.log("该数小于10"); }else{ console.log("该数等于10"); } Ø switch语句 switch语句可以直接判断字符串类型 var num = 4; switch(num){ case 1: console.log("num为1"); break; case 2: console.log("num为2");

JS正则表达式

倖福魔咒の 提交于 2020-02-24 07:00:34
JavaScript 正则表达式: 正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。 搜索模式可用于文本搜索和文本替换。 RegExp对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。 什么是正则表达式? 正则表达式是由一个字符序列形成的搜索模式 当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容 正则表达式可以使一饿简单的字符,或一个更复杂的模式 正则表达式可用于所有文本搜索和文本替换的操作` 语法 /正则表达式主体/修饰符(可选) 其中修饰符是可选的。 创建RegExp对象的语法 new RegExp ( pattern , attributes ) ; 参数 参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。 参数 attributes 是一个可选的字符串,包含属性 “g”、“i” 和 “m”,分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。 返回值 返回值 一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么

JS闭包

假装没事ソ 提交于 2020-02-24 04:57:44
JS闭包 了解函数的两个阶段 函数的定义阶段 在内存中开辟一个存储空间 把函数体内的代码当作字符串一模一样的放在这个空间中(遇到的所有变量都不进行解析) 把这个空间地址赋值给函数名(变量名) 函数的调用阶段 按照函数名(变量名)找到对应的存储空间 从新开辟一个函数 执行空间 在这个执行空间里面进行形参赋值 在这个执行空间里面进行预解析 把函数存储空间的代码复制一份到执行空间里面执行一遍 执行完毕之后, 这个开辟出来的执行 空间销毁 注意 :函数每次调用的时候都会开辟一个执行空间,调用完毕代码就会被销毁,当你再次调用的时候会再开辟一个执行空间,执行完毕代码就会被销毁。 举个栗子: var num = 100 function fn ( ) { console . log ( '数字: ' + num ) } fn ( ) fn ( ) 函数的两个阶段上图代码的图解: 解析: 函数定义阶段 在内存中开辟了一个函数存储空间(xxff00) 把 console.log('数字: ’ + num) 这句代码放在这个存储空间中, 此时 num 变量没有解析, 存储的就是 num 把 xxff00 这个空间地址赋值给了 fn 这个函数名 函数调用阶段 按照 fn 里面存储的地址, 找到 xxff00 这个函数存储空间 开辟一个函数执行空间(xxff11), 在运行内存里面 在 xxff11

JS new 运算符

你。 提交于 2020-02-24 04:56:56
new 运算符 { // new运算符都在哪些地方出现过呢? let str = ""; let str1 = new String(); let obj = { name:"" } let obj1 = new Object(); } { /* new运算符的特征: 1.执行函数 2.自动创建一个空对象 3.把空对象和this绑定 4.如果没有返还,隐式返还this(空对象); */ { function test(){ console.log("test"); } // test();//使用()执行. new test();//使用new执行 new test;//同时也是可以不用加括号(); 加不加根据是否需要传递参数按继续情况决定; } { new Test();//使用new执行的时候 function Test(){ // let obj = {};//自动有一个空对象 -> 等同于this // return this;//自动返还 } } { // 工厂模式的修改: /* function Person(name,age,hobby){ let obj = {}; obj.name = name; obj.age = age; obj.hobby = function(){ console.log(hobby) }; return obj; } */

JavaWeb学习总结

房东的猫 提交于 2020-02-24 04:16:33
我在学习javaweb的时候,首先是 学习了Tomcat ,然后看了 HTML 、 CSS 、 JS ,在学JS的时候,用到一些选择器的时候,感觉不太好,又回过头看了看 CSS ,终于可以安心的看我的JS了, JS基础 、 DOM 、 BOM ,然后学习了 jQuery 和 HTTP ,还有 Ajax ,好了,然后是 servlet 、 JSP 、 filter 。当把这些学完之后,自己做了一个简单的 web项目 。 这里给出学习servlet和filter的案例: https://github.com/uphe/javaweb-study 来源: CSDN 作者: 贺志营 链接: https://blog.csdn.net/HeZhiYing_/article/details/104464862

js对象

十年热恋 提交于 2020-02-24 04:14:16
对象 定义 无序的键值对的集合 创建对象的两种方式 字面量: var student = {};建了一个空对象 内置构造函数 var student = new Object(); 对象的赋值和取值 取值 对象名.属性名 ------如果存在,返回响应值;如果不存在,undefined 对象名.方法名------直接获取,返回函数体,对象名.方法名(),即调用这个方法 赋值(类似数组) 对象名.属性名-----存在,直接覆盖,不存在,新建属性,在赋值 操作对象的两种语法 点语法 对象名.属性名: 简单方便,不支持变量 中括号语法: 对象名[‘属性名’] 灵活,支持字符串和变量 对象名[变量名] :通过变量值找到属性名,然后再去对象里面查找对应的值 对象的遍历 for(var k in obj){……} k键(属性名) obj[k] 值(属性值) 批量创建对象 工厂函数 本质就是一个函数,将创建对象的代码进行封装成函数 特点:创建出来的类型都时Object类型 function createObject()({ var obj = {……}; return onj; } 注意点:1.返回值—调用时通过传过来的实参对对象进行具体的赋值 对象的方法中,this指的是当前的对象 自定义构造函数 特征:需要结合new使用,创建出来的对象有自己的类型 构造函数中new的作用 建立一个新对象

js面向对象

笑着哭i 提交于 2020-02-24 04:10:09
什么是面向对象 在js中对象是一个无序的数据集合或者也可以说是属性和方法的集合,可以动态的添加属性可方法。面向对象是一种软件开发的思想和面向过程是相对应的,就是把程序看作一个对象,将属性和方法封装其中,以提高代码的灵活性、复用性、可扩展性。面向过程是按需求一步一步的用代码从上往下实现,这样做代码不易维护、复用、扩展。所以在大型项目中我们需要以面向对象的方式去开发项目,这样就体现了用面向对象的方法写出来的代码易维护、易复用、易扩展。 面向对象的特征:封装、继承、多态、抽象。 封装 我对封装的理解就是把属性和方法封装其中,将不需要对外公开的内容隐藏起来提供接口让用户访问属性和方法。 继承 继承就好比我继承了我爸部分的相貌特征但我和我爸又不完全长一个样子,而且我自己没有钱但我爸有钱,我爸的钱可以给我花。就是指子类构造函数继承了父类构造函数的一些属性和方法,但其本身也有一些自己的方法和属性。 多态 多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。比如一个我养了条狗和一个猫,我对它们发出“叫”的指令时它们一个是“汪汪汪”的叫一个是“喵喵喵”的叫,我给的指令是一样的它们发出来的声音却不一样。 抽象 先不去考虑细节的东西,从大的方向开始。比如学生就是一个抽象实体,他的属性并不足以描述出一个人,需要更多的细节才能描述一个人的方方面面。使用抽象可以尽可能避免过早考虑一些细节

java到js的中文无法显示,中文显示位(?)

空扰寡人 提交于 2020-02-24 03:31:49
今天遇到这么一个问题,用js调用java的get请求,得到的json数据中中文无法正常显示,jsp文件中都是申明utf-8格式的,查询了一番,发现问题出现在@ResponseBody上 @ResponseBody默认的编码格式为 ISO-8859-1 ,需要修改,在@GetMapping中加入produces的内容 参考: springmvc @ResponseBody乱码,兼容UTF-8格式 java代码 @Controller public class ExamController { @Autowired private ExamService examService; @GetMapping(value = "/getPaper", produces = "application/json; charset=utf-8") @ResponseBody public String getPaper(HttpSession session) { Paper paper = null; try { paper = this.examService.getPaper(); }catch(SystemException e){ session.setAttribute("msg", e.getMessage()); }catch(Exception e1) { e1

JavaScript的案例(数据校验,js轮播图,页面定时弹窗)

拥有回忆 提交于 2020-02-24 02:55:56
1.数据校验 步骤 1.确定事件(onsubmit)并绑定一个函数 2.书写这个函数,获取数据,并绑定id 3.对用户输入数据进行判断 4.数据合法,让表单提交,非法不让表单提交 如何控制表单提交:onsubmit用于提交的位置,定义函数是给出一个返回值 onsubmit=return checkform() <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> function checkForm(){ var uValue=document.getElementById("username").value; if(uValue==""){ document.getElementById("remind").innerHTML="用户名不能为空                    "; return false; } var pValue=document.getElementById("password").value; if(pValue==""){ alert("密码不能为空"); return false; } var eValue=document.getElementById("email".value); if(!/^