---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
Javascript是一种在浏览器端执行的语言,不用和服务器交互就可以实现网页的一些变化。JavaScript是一种解释型语言,不需要编译就可以随时运行。
Javascript是一种弱类型的语言,不需要指明变量类型,会自动的判断变量类型。声明变量类型都使用var。可以使用双引号或者单引号声明字符串。
Javascript动态创建的元素,搜索引擎捕捉不到,所以可以不需要动态创建的地方就不要动态创建。
动态创建元素、添加元素和设置属性:
function Method() {
var input = document.createElement("input"); // 创建元素
input.setAttribute("type", "button");// 设置属性
input.setAttribute("value", "创建元素");
input.setAttribute( "class", "face");
document.body.appendChild(input); // 添加元素
}
function ChangeFont() {
var p = document.getElementsByTagName("p"); // 获取页面上所有的p标签
p.item(0).className = "face"; // 设置第一个p标签的class属性
}
alert():警告框。confirm:确认框。prompt:消息框。
var result = confirm("点击确认可以得到人民币!");// 确认框返回了bool值
if (result) {
alert( "你得到了人民币!");// 警告框弹出消息
}
result = prompt("请输入你的姓名!", "");// 消息框返回了输入的消息
alert("你的姓名是:" + result);
事件冒泡:事件由内向外依次执行
< div onclick ="alert('div点击事件')" >< span onclick ="alert('span点击事件')" >< strong onclick ="alert('strong点击事件')" > 事件冒泡strong > span > div >
使用document读取元素的width、height等属性时,读出来的是像"10px"这样的字符串。
使用document动态设置元素的width、height等属性时,可以使用parseInt将"10px"这样的字符串解析成10,然后进行四则运算等。
var width = document.getElementById("Demo").style.width;
alert(parseInt(width));
在javascript中没有类的语法,只有对象
function Person(name, age) {
this .Name = name; // 声明对象的成员的值等于传进来的参数
this .Age = age;// 对象的成员就是以对象的key的方式出现的
this .Say = function () { alert("大家好,我叫" + this .Name + ",今年" + this .Age + "岁") };
}
p1 = new Person("张耕明", 26); // 这里必需要使用new以后才可以像操作一个对象一样操作这个方法
p1.Say();
数组的初始化:
var arr = [1, 2, 3, "天", "地", "人"]; // 普通数组初始化
var arr1 = { "姓名": "张耕明", "年龄": "28", "性别": "男" }; // 键值对数组初始化
for (var i in arr) { // 在javascript中这样写遍历的是数组的key
alert(arr[i]); // 获取该key上的value
}
区 分:
foreach (string str in nickname) // C#中foreach遍历的是数组的值
{
Console.WriteLine( "绰号:" + str);
}
查看对象所有的成员或者属性:
for (var v in document) {
alert(v); // 对象的成员就是以对象的key的方式出现的
}
Array 对象的使用:
var arr = new Array(); // 动态数组,不需要指定数组的大小
arr[0] = "吃饭";
arr[ "晚上"] = "睡觉";
arr[ -1] = "武术";
arr[ 1] = "玩电脑";
arr[ 0.1] = "锻炼";
arr.reverse(); // 元素反转
for (var i in arr) {
alert(i + " " + arr[i]);
}
setInterval(重复执行的定时器)、setTimeout(等待一段时间后执行一次的定时器)。
清除setInterval类型的定时器时用clearInterval()方法,清除setTimeout类型的定时器时用clearTimeout()方法。
var interval; // 为定时器设定一个标识、编号。
function Start() {
interval = setInterval("Method('Hello Javascript!')", 3000); // 执行有参数的方法,每隔3秒执行一次
interval = setInterval("Method()", 3000); // 执行没有参数的方法
interval = setTimeout("Method()", 3000); // 3秒后执行一次指定的方法
}
clearInterval(interval); // 清除定时器时传入指定的定时器编号
剪贴板操作:
function SetClipboard() {
var text = document.getElementById("Text").innerHTML;
text = text + "本文章来自:" + window.location.href;
if (window.clipboardData) { // 这个属性支持IE,不支持火狐
window.clipboardData.setData("text", text);// 设置剪贴板内容和 oncopy 事件不能同时进行,需要延时
}
}
剪贴板操作!
标题滚动:
function ScrollTitle() {
var title = document.title;
var first = title.charAt(0);
var last = title.substring(1, title.length);
document.title = last + first;
}
function Start() {
setInterval( "ScrollTitle()", 300);
}
正则表达式:
// 用圆括号将所有选择项括起来,相邻的选择项之间用|分隔。但用圆括号会有一个副作用,是相关的匹配会被缓存,此时可用?:放在第一个选项前来消除这种副作用。
^: 匹配输入字符串的开始位置。例:^ \d。 $:匹配输入字符串的结束位置。例:\d$。
*:匹配零次或多次。例:\d*。等价于{0,}。 +: 匹配一次或多次。例:\d+。等价于{1 ,}。
?:匹配零次或一次。例:\d?。等价于{0,1}。 {n}:匹配n次。例:\d{2 }。
{n,}: 匹配至少n次。例:\d{ 2,}。 {n,m}:匹配至少n次,最多m次。例:\d{1,2 }。
\d: 匹配数字字符。等价于[ 0-9]。 \D:匹配非数字字符。等价于[^0-9 ]。
\n: 匹配换行符。等价于\x0a。 \t: 匹配制表符。等价于\x09。
\s: 匹配任何空白字符,包括空格、制表符、换页符等。 \S: 匹配任何非空白字符。
\w: 匹配数字、字母和下划线。等价于[A -Za-z0-9_]。 \W:匹配非数字、字母和下划线。等价于[^A-Za-z0- 9_]。
[\u4e00 -\u9fa5]: 匹配汉字。例:[\u4e00-\u9fa5]或[汉字]。 ?::后向引用,表示忽略相关匹配的保存。例:^(?:(?:[1-9])|(?:[1-2][0-9])|30|31)$。
Javascript中使用正则表达式:
var reg = /^\w{0,9}$/;// 正则表达式
var bl = reg.test("123");// 返回bool值
var result = reg.exec("123");// 返回字符串
JQuery学习
JQuery简介:
JQuery是对Javascript封装的库,其内部是一些Javascript函数。
JQuery采用链式编程,都是用方法来取值或者赋值,所以可以一直点下去。
普通Javascript的缺点:在一些不同浏览器下需要不同的实现方法,要编写跨浏览器的程序非常麻烦。
JQuery优点:JQuery占用空间少,使用简单方便(Write less, Do more),跨浏览器兼容性好,插件丰富、开源、免费。
JQuery中ready的多次注册:
jQuery(document).ready(Demo); /* 传入当DOM就绪后要执行的函数 */
function Demo() {
alert( "这是一次演示!");
}
$(document).ready( function () { alert("这是匿名的函数"); }); /* 尽量使用匿名函数,可以避免命名冲突 */
$( function () { alert("这样也可以!") }); /* 这是ready注册函数的简写 */
window.onload = function () {
alert( "DOM元素、CSS、图片等DOM元素的属性加载完毕后触发");
}
window.onload = function () {
alert( "后来的替代了先来的!"); /* window.onload只能注册一次,后注册的函数会覆盖先注册的函数 */
}
JQuery提供的函数:
/* 调用map函数对传入的数组中的元素逐个进行处理,然后将处理后的元素返回 */
var arr = [1, 3, 5, 2, 4, 6];
var newArr = $.map(arr, function (element) { /* 第一个参数代表传入的数组,第二个参数中的element代表数组中的每一个元素 */
if (element % 2 == 0) {
return element + 5;
}
else {
return element; /* 使用map函数需要提供返回值 */
}
})
/* 调用each函数对传入的数组中的元素逐个进行处理。 */
var arr1 = { "动漫1": ["海贼王", "路飞"], "动漫2": ["火影忍者", "鸣人"], "电影": ["功夫", "周星驰"] };
$.each(arr1, function (key, value) { /* 第二个参数中的key和value代表数组中的键和值 */
alert( "这里是" + key + "频道。\n" + "正在播放" + value[0] + ",主角:" + value[1]);
}) /* 使用 $.each()函数不需要提供返回值 */
// 在每一个匹配元素的submit事件中绑定一个处理函数。
$("#Btn").submit(function () {
return false ;
})
$( "#Btn").unbind("submit"); // bind()的反向操作,从每一个匹配的元素中删除绑定的事件。
// 禁止表单提交
$("#BtnSubmit").click(function () {
return false ;
})
JQuery动画效果:
$(element).show()、$(element).hide(),显示和隐藏。
$(element).slideUp()、$(element).slideDown()、$(element).slideToggle(),滑动效果。
$(element).fadeIn()、$(element).fadeOut()、$(element).fadeTo(),淡入淡出效果。
$(element).animate(),自定义动画。只有数字值可创建动画(比如 "margin:30px")。字符串值无法创建动画(比如 "background-color:red")
$("#Button").click(function () {
$( "#Div3").animate({
width: "30px",
height: "100px",
fontSize: "100px"
}, 3000);
})
// 鼠标跟随效果
$(document).mousemove(function (e) {
$( "p").css({ position: "absolute", left: e.pageX, top: e.pageY }); /* e.pageX和e.pageY分别代表鼠标在页面上的X坐标和Y坐标 */
})
JQuery基本选择器:
$(".style") /* 选择class属性是style的所有元素 */
$( "#Div input") /* 选择id是"Div"下的所有input元素 */
$( "#Div > input") /* 选择id是"Div"下的直接input元素 */
$( "div ul li") /* 选择div元素内的ul元素内的li元素 */
$( "body,input.style,ul") /* 选择body元素、class属性是"style"的所有input元素、所有ul元素 */
$(element).next() /* 选择该元素后相邻的同级元素 */
$(element).nextAll() /* 选择该元素后所有的同级元素 */
$(element).siblings() /* 选择该元素同级的所有元素 */
$( "td").mouseenter(function () {
$( this ).animate({ "width": "200px", "height": "60px" }); /* 选择鼠标进入的 元素*/
$( "td").not($(this )).animate({ "width": "100px", "height": "60px" }); /* 选择除该 元素以外的所有 元素*/
})
JQuery过滤选择器:
$("td:first") /* 选择第一个td元素 */
$( "td:last") /* 选择最后一个td元素 */
$( "td:not(td:last)") /* 选择不是最后一个td元素的所有td元素 */
$( "td:even") /* 选择所有偶数行的元素,索引从0开始计数,奇数索引受影响。例:第二行,索引为1 */
$( "td:odd") /* 选择所有奇数行的元素,索引从0开始计数,偶数索引受影响。例:第一行,索引为0 */
$( "td:eq(0)") /* 选择等于该索引值的元素,eq---equal */
$( "td:gt(0)") /* 选择大于该索引值的元素,gt---great */
$( "td:lt(9)") /* 选择小于该索引值的元素,lt---little */
$( ":header") /* 选择所有的标题元素,h1...h6 */
JQuery属性过滤选择器:
$("input[id]") /* 选择所有具有id属性的input元素 */
$( "[title=提示消息]") /* 选择title等于"提示消息"的所有元素 */
$( "input[title!=提示消息]") /* 选择title不等于"提示消息"的所有input元素 */
$( "input[title^=输入]") /* 选择title以"输入"开始的所有input元素 */
$( "input[title$=搜索]") /* 选择title以"搜索"结束的所有input元素 */
$( "input[title*=关键词]") /* 选择title包含"关键词"的所有input元素 */
$( "[id][id$=t]") /* 选择所有具有id属性,并且id是以t结束的所有元素 */
表单选择器:
$(":input") /* 选择所有 input, textarea, select 和 button 元素 */
$( "input") /* 选择所有 input元素 */
$( ":text") /* 选择所有的单行文本框,相当于 $("input[type=text]") */
$( ":password") /* 选择所有密码框 */
$( ":checkbox") /* 选择所有复选框 */
$( ":radio") /* 选择所有单选按钮 */
$( ":reset") /* 选择所有重置按钮 */
$( ":submit") /* 选择所有提交按钮 */
$( ":file") /* 选择所有文件域,相当于 $("input[type=file]") */
$( ":image") /* 选择所有图像域,相当于 $("input[type=image]") */
$( ":hidden") /* 选择所有隐藏元素 */
$( ":button") /* 选择所有按钮,其中不包括:重置、提交、单选、复选按钮 */
表单对象属性选择:
$("input:enabled") /* 选择所有可用的input元素 */
$( "input:disabled") /* 选择所有不可用的input元素 */
$( "input:checked") /* 选择所有被选中的input元素(复选框、单选框等,不包括select中的option) */
$( "select option:selected") /* 选择所有被选中的option元素 */
属性的增加、删除、修改、读取:
$("a:first").attr("href") /* 获取元素的属性值 */
$( "a:first").attr({ href: "HomePage.html", title: "首页", className: "home" }); /* 设置元素的多个属性值 */
$( "a:first").attr("title", "首页"); /* 设置元素的一个属性值 */
$( "p").attr("style", function () {
return "font-size:36px"; /* 设置的属性值是一个方法的返回值 */
})
$( "a").removeAttr("href"); /* 删除元素的属性值 */
创建、删除、替换DOM节点:
$("body").append(element); /* 在页面的末尾增加元素 */
$( "body").prepend(element); /* 在页面的开始增加元素 */
$(element).after(element); /* 在指定元素的后面增加元素 */
$(element).before(element); /* 在指定元素的前面增加元素 */
$( "div").empty(); /* 清空div的内容,div仍然保留在页面中 */
$( "a").remove("[title]"); /* 删除具有title属性的所有a标签 */
$( "p:first").replaceAll("p:last");// 用第一个p标签替换掉最后一个p标签
JQuery对象和DOM对象:
JQuery对象是通过JQuery包装DOM对象以后产生的对象,DOM对象只有转换为JQuery对象才能被JQuery操作。
JQuery只能调用JQuery内部封装的方法,不能调用DOM对象的方法,反之亦然。
$(function () {
// $("#Div").innerHTML = "123
"; //错误:使用JQuey对象调用DOM对象的方法
// document.getElementById("Div").html("123
"); //错误:使用DOM对象调用JQuery对象的方法
var domObject = document.getElementById("Div"); // 得到DOM对象
$(domObject).html("DOM对象转换为JQuery对象 "); // 包装DOM对象后调用JQuery的方法
var dom = $(domObject)[0]; // 将JQuery对象转换为DOM对象
$("#Div").css({ background: "red", width: "300px", height: 300, "margin-left": "300px" }); // 如果属性名包含 "-"的话,必须使用引号
$("#Div").css("width", 300).css("height", 300).css("background", "red"); // 修改style值
alert($("#Div").css("width")); // 获取style值
alert($("#Button").val()); // 获取value值
$("#Button").val("value"); // 修改value值
alert($("Div").html());// 获取html源码内容
alert($("Div").text()); // 获取文本内容
})
编写jQuery 插件:
jQuery.extend({
_四则运算: function (a, b, c) {
// /
// / 四则运算
// /
// / 参数1
// / 参数2
// / 运算符
// /
var arr = ["+", "-", "*", "/"];
a *= 1; b *= 1; // 转换为数字
if (isNaN(a) || isNaN(b)) {
alert( "不能识别的符号,请输入数字!");
return ;
}
for (var i = 0; i < arr.length; i++) {
if (arr[i] == c) {
switch (c) {
case "+": alert(a + b);
break ;
case "-": alert(a - b);
break ;
case "*": alert(a * b);
break ;
case "/": alert(a / b);
break ;
default :
}
return ;
}
}
alert( "错误,请检查你的输入!");
}
});
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
转载于:https://www.cnblogs.com/-zgm/archive/2012/10/31/2747655.html
你可能感兴趣的:(黑马程序员Javascript学习)
JavaWeb(苍穹外卖)--学习笔记14
哈哈哈哈哈0627
学习 笔记
前言终于开始学习做项目了,本篇文章是学习B站黑马程序员苍穹外卖的学习笔记。我的学习路线是Java基础语法-JavaWeb-做项目,管理端的功能学习完之后,就进入到了用户端微信小程序的开发,这篇文章是把我觉得JavaWeb的学习中比较重要的内容写一个总结(其实因为学到下单支付太难了我复习复习前面的)Controller层(这里只讲讲几个需要注意的注解)管理服务端的动态资源:SpringFramewo
JavaWeb(苍穹外卖)--学习笔记11(Filter(过滤器) 和 Interceptor(拦截器))
哈哈哈哈哈0627
JavaWeb(苍穹外卖) 学习 笔记
前言本篇文章是学习B站黑马程序员苍穹外卖的学习笔记。我的学习路线是Java基础语法-JavaWeb-做项目,管理端的功能学习完之后,又进入用户端的登陆界面的开发,我们可以看到在后续的请求当中,都会在请求头中携带能验证身份的凭证到服务端,而服务端需要统一拦截所有的请求,从而判断是否携带的有合法的JWT令牌,下面主要来说说负责拦截的Filter(过滤器)和Interceptor(拦截器)(感觉整个项目
Java笔记 - 黑马程序员_08(Lambda表达式,接口组成更新,方法引用,类加载器,反射)
谦逊蓄意,只为飞的更高
Java java jvm 前端
1.Lambda1.1函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是“数据做操作“面向对象思想强调“必须通过对象的形式来做事情”函数式思想则尽量忽略面向对像的复杂语法:“强调做什么,而不是以什么形式去做”而我们要学习的Lambda表达式就是函数式思想的体现1.2体验lambda表达式需求:启动一个线程,在控制台输出一句话:多线程程序启动了方式1:定义一个类MyRunna
JavaScript学习笔记6-函数的定义和调用
Anthony_tester
JavaScript基础教程 JavaScript 函数
本文记录下JavaScript中函数的定义和调用。JavaScript中采用关键字function来定义一个函数,Python是采用def开定义函数,函数体需要用一对大括号({})括起来,来看看下面的例子。//本文本介绍函数的定义和调用functionfun1(){alert("thisisanalertdialog.");}fun1();上面用关键字function定义了一个函数fun1(),里
黑马程序员C++提高编程--STL常用容器之map与multimap
小葡萄2025
c++ java 开发语言
1.map基本概念map简介:map中所有元素都是pair(键值对),pair中第一个元素为key(键值),起到索引作用,第二个元素为value(实值)。所有元素都会根据元素的键值自动排序map本质:map/multimap属于关联式容器,底层结构是用二叉树实现。优点:可以根据key值快速找到value值map和multimap区别:map不允许容器中有重复key值元素,而multimap允许容器
C++黑马程序员通讯录删除模块
颖川守一
c++ 算法 开发语言
围绕找到联系人,删除联系人操作找到联系人——>使用for循环进行一一对应,如果找到跳出来删除联系人——>使用for循环,让每次的后一位把前一位给覆盖住,从而实现删除操作#includeusingnamespacestd;#include#defineMAX1000//设计联系人结构体structPerson{//姓名stringm_Name;//性别,公1母2intm_Sex;//年龄intm_A
黑马程序员新版Linux零基础快速入门到精通,个人笔记版3万字注解!!
范纹杉好好生活工作
linux 笔记 运维 开发语言 c语言 c++ 服务器
【公开声明】个人笔记:仅供个人学习笔记,记录学习过程,严谨商业转载商业售卖!感谢黑马程序员机构公开课知识分享开源!网页地址:https://www.bilibili.com/video/BV1n84y1i7td/?p=22&share_source=copy_web&vd_source=d39882002c43c19fb5a68abed84dfad5网页界面:【黑马程序员新版Linux零基础快速入
C++黑马程序员通讯录显示模块
颖川守一
c++ 算法 开发语言
这一部分就是一个指针传递,然后内部执行,存储了联系人就用if显示出来#includeusingnamespacestd;#include#defineMAX1000//设计联系人结构体structPerson{//姓名stringm_Name;//性别,公1母2intm_Sex;//年龄intm_Age;//电话号stringm_Phone;//地址stringm_Addr;};//设计通讯录结构
我在黑马程序员学后端基础Spring
1.三层架构:ControllerServiceDao,遵循单一职责原则。Controller:接受前端数据请求,对请求进行处理,并且响应数据Service:进行业务逻辑的处理Dao:对数据进行访问Controller接受了前端的数据请求,然后调用Service层,Service然后调用Dao层,Dao层读取数据,将读取的数据返回给Service层,Service层将数据的业务逻辑处理结果返回给C
我在黑马程序员学web前端
新手来了@click
前端
1网页由三部分组成1.、html负责网页的结构2.css、负责网页的美化,控制网页元素的样式3、js,负责网页交互html常见的标签:1、form表单input输入框select下拉菜单option下拉列表2、table表格thead表头tbody是表体tr行th表头加粗td是列br是换行2/CSS常见的三种引入方式行内样式、内部样式、外部样式用link关键字常用的元素选择器:标签选择器、id选择
Java Script学习笔记(1)
MERRYME2
笔记 java 学习 javascript
JavaScript学习笔记(1)(课程:黑马程序员)JavaScript是什么JavaScript是世界最流行的语言之一,是一种运行在客户端的脚本语言(Script是脚本的意思)脚本语言:不需要编译,运行过程中由js解释器(js引擎)逐行来进行解释并执行现在也可以基于Node.js技术进行服务器端编程JS的组成ECMAScript(JavaScript语法)和DOM(页面文档对象)和BOM(浏览
黑马程序员——WPF学习第一天!!
xiaoxiang_04
编程 C# 黑马
----------------------WindowsPhone7手机开发、.Net培训、期待与您交流!----------------------WPF给我的第一感觉就是界面更加的人性化,大部分控件和winform控件差不多,但是又不尽相同,个人感觉,WPF就是吸收了winform和web一些优势的一门新的技术。下面一些笔记和想法。1.WPF其实和winform主界面差不多,大部门可以用拖控
黑马程序员_学习笔记2——wpf计算器
马林雷
JavaWeb(苍穹外卖)--学习笔记03(登录生成令牌)
老虎0627
JavaWeb(苍穹外卖) 学习 笔记 java
前言本片文章是学习B站黑马程序员苍穹外卖的学习笔记。在Day01(如果学到登录界面这里卡住了,可以看看这篇文章),登陆界面的后端实现大致可以分为两部分登录功能和登录校验,其中登陆校验的实现是基于令牌JWT技术来实现会话追踪(校验部分还有拦截器Interceptor这个我没太学懂视频也没提,以后在更)JWT令牌基本概念JWT是一种在Web应用程序,简单且安全地处理用户身份验证和信息交换的技术,首先我
Python学习打卡:day09
胜天半子祁厅
Python python 学习 开发语言
day9笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了目录day964、字典课后习题65、5类数据容器的总结对比数据容器分类数据容器特点对比66、数据容器的通用操作遍历统计len、max和min转换list(容器)、tuple(容器)、str(容器)、set(容器)排序容器通用功能总览67、拓展——字符串的大小比较ASCII码表字符串比较68、函数
Python学习打卡:day02
day2笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了目录day28、字符串的三种定义方式字符串在Python中有多种定义形式字符串的引号嵌套9、字符串的拼接10、字符串格式化11、格式化的精度控制12、字符串格式化的方式213、对表达式进行格式化14、字符串格式化的课后练习题15、数据输入(input语句)input语句(函数)input语句获取
前端开发核心:HTML、CSS与JavaScript学习指南
Randy Rhoads
本文还有配套的精品资源,点击获取简介:HTML、CSS和JavaScript是前端开发的基础,分别负责网页的结构、样式和动态行为。学习这三种技术需要理解它们之间的关系及其协同工作的机制。本笔记提供了一个全面的复习资料,包括标签使用、CSS布局技巧、JavaScript基础语法和DOM操作,旨在帮助巩固知识点和发现潜在的学习盲点。同时,介绍了响应式设计、Web组件、ServiceWorker等现代前
HTML&CSS&Javascript学习总结
HTMLHTML(*HypertextMarkupLanguage)是一种超文本标记语言一、HTML标记1.HTMl元素分析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dqwzelyx-1598868442842)(https://qige.io/web/brief-html/img/f63738cc51ebfa14.png)]*开始标签(Openingtag):
C++入门笔记
张峻铖
C++ c++
写在开头初衷:对于一个程序员/算法工程师来说,只会Python未免过于单薄了。出于未来找工作的需要,开始学习C++,并使用C++刷LeetCode。背景:本科有C语言课程,甚至学过汇编,研究生阶段主要使用Python。提醒:该系列文章以尽可能快地应用C++(刷题)为目的,暂以B站黑马程序员C++教程为教材,主要记录重点内容和对个人来讲不易理解或陌生的内容,具有较浓的个人笔记特点,因此,在全面性和权
Python学习打卡:day13
胜天半子祁厅
Python python 学习 java
day13笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了目录day1397、初识对象98、类的成员方法类的定义和使用成员变量和成员方法成员方法的定义语法99、类和对象在程序中通过类来描述基于类创建对象100、构造方法课后练习101、魔术方法\_\_str\_\_字符串方法\_\_lt\_\_小于符号比较方法\_\_le\_\_小于等于比较符号方法\
Vue3基础(5)——前端路由、vue-router
番大茄子
Vue vue.js javascript
黑马程序员Vue全套视频教程,从vue2.0到vue3.0一套全覆盖,前端必会的框架教程_哔哩哔哩_bilibili喜欢的小伙伴们别忘了投币,点赞,收藏呦,历经5年的反复打磨与锤炼,黑马程序员重磅推出全套最新的Vue2+Vue3基础课程。共计500多集的免费视频,助您轻松掌握前端圈最火的Vue框架!https://www.bilibili.com/video/BV1zq4y1p7ga?p=399&
黑马程序员苍穹外卖DAY1
popywei
黑马程序员苍穹外卖 java mysql
1.前端页面能正常显示但无法登录(一直转圈圈)找到下面路径的dev.ymlport一定要跟自己本机的保持一致,,username和password也一定是自己主机的用户名和密码,不然连不上。登录界面的密码为数据库表的密码,可以在表里面设置。
【小程序开发0基础】黑马程序员微信小程序开发02
本文是笔者自己学习过程中的笔记,仅记录,如需参考,留赞自取即可。可能存在疏漏等,敬请指正。如有侵权,可联系删文。结合黑马程序员的视频和ppt更易理解。如果有HTML/CSS/Javascript基础,了解过vue框架阅读会更加流畅。通过阅读本文可以快速掌握小程序开发基础,从页面渲染到网络请求全流程梳理!涵盖WXML数据绑定与事件处理、WXSS样式语法、全局/页面配置优化及网络请求实战技巧,适合新手
Java 自学路线图之 Java 进阶自学
m0_74824802
面试 学习路线 阿里巴巴 java 开发语言
文章目录Java自学路线图的第二阶段是Java语言进阶自学,在自学了第一阶段的Java基础自学后,大家对Java语言编程有了初步的了解和认识,建议在第一部分自学后整理一下自己的自学思路,思考自己在自学Java基础过程中的不足和优势,建议接下来的自学过程尽量弥补自己的不足。黑马程序员2020最新版Java自学路线图把Java语言进阶自学分为九个部分:面向对象进阶,常见API,异常,集合,IO,多线程
数据库(黑马程序员第六天)
菜鸟小九
数据库
数据库(DB)存储和管理数据的仓库数据库管理系统(DBMS):操纵和管理数据库的大型软件SQL:操作关系数据库的编程语言,定义了一套操作关系数据库的统一标准MySQL概述mysql-u用户-p密码-h主机-P端口号关系型数据库:建立在关系模型基础上,由多张相互连接的二维表组成的数据库优点:使用表存储数据,格式统一、便于维护SQL语句操作,标准统一,使用方便,可复杂查询大小写敏感问题:内容默认是否区
网络编程(黑马程序员)
java.net.*网络通信三要素ipIpv4:32位//点分十进制ipv6:128位域名:通过域名在DNS服务器找IP公网IP:192.168.0.0-192.168.255.255本机IP:127.0.0.1ipconfig:查看本机IPpingIP地址:检查网络是否连通InetAddress类表示IP地址方法:获取本机IP:getLocalHost()根据IP地址或者域名返回InetAddr
请求、响应、分层解耦(黑马程序员第五天)
菜鸟小九
java 开发语言
想要响应请求需要实现Servlet接口springboot中DispatcherServlet实现了此接口前端请求会被DispatcherServlet封装为HttpServletRequest对象并通过HttpservletResponse对象响应数据BS架构请求请求参数接收简单参数接收方法一:通过原始httpservletRequest(了解即可)繁琐、手动类型转换@RestControlle
黑马程序员C++提高编程--STL容器之set与multiset
1.set基本概念功能描述:set容器,也叫关联式容器,内部自动排序,不允许重复元素所有元素在插入时自动被排序本质:set/multiset属于关联式容器,底层结构是用二叉树实现set和multiset区别:set不允许容器中有重复的元素multiset允许容器中有重复的元素2.set构造和赋值功能描述:创建set容器以及赋值构造:setst;//默认构造函数set(constset&st);//
前端|CSS(一)| pink老师
啦啦右一
右一的开发日记合集 右一的电子笔记合集 前端 css
参考视频:黑马程序员前端CSS3基础教程,前端必备基础目录CSS引入引入CSS样式表CSS基础选择器标签选择器类选择器(最常用)id选择器通配符选择器CSS文字文本样式font字体CSS外观属性CSS复合选择器后代选择器子元素选择器交集选择器并集选择器链接伪类选择器选择器总结标签显示模式分类标签显示模式转换display行高那些事(line-height)CSS背景(background)背景颜色
MySQL数据库学习笔记(一)
minxin_
数据库 数据库 mysql 学习
MySQL数据库学习笔记(一)文章目录MySQL数据库学习笔记(一)数据库相关概念关系型数据库SQL通用语句SQL分类DDL查询创建删除使用表结构查询创建案例修改删除MySQL数据类型数值类型字符串类型日期类型本文为黑马程序员MySQL数据库学习笔记数据库相关概念名称全称简称数据库存储数据的仓库,数据是有组织的进行存储DataBase(DB)数据库管理系统操纵和管理数据库的大型软件DataBase
用MiddleGenIDE工具生成hibernate的POJO(根据数据表生成POJO类)
AdyZhang
POJO eclipse Hibernate MiddleGenIDE
推荐:MiddlegenIDE插件, 是一个Eclipse 插件. 用它可以直接连接到数据库, 根据表按照一定的HIBERNATE规则作出BEAN和对应的XML ,用完后你可以手动删除它加载的JAR包和XML文件! 今天开始试着使用
.9.png
Cb123456
android
“点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png
智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向,在界面改变方向后,界面上的图形会因为长宽的变化而产生拉伸,造成图形的失真变形。
我们都知道android平台有多种不同的分辨率,很多控件的切图文件在被放大拉伸后,边
算法的效率
天子之骄
算法效率 复杂度 最坏情况运行时间 大O阶 平均情况运行时间
算法的效率
效率是速度和空间消耗的度量。集中考虑程序的速度,也称运行时间或执行时间,用复杂度的阶(O)这一标准来衡量。空间的消耗或需求也可以用大O表示,而且它总是小于或等于时间需求。
以下是我的学习笔记:
1.求值与霍纳法则,即为秦九韶公式。
2.测定运行时间的最可靠方法是计数对运行时间有贡献的基本操作的执行次数。运行时间与这个计数成正比。
java数据结构
何必如此
java 数据结构
Java 数据结构
Java工具包提供了强大的数据结构。在Java中的数据结构主要包括以下几种接口和类:
枚举(Enumeration)
位集合(BitSet)
向量(Vector)
栈(Stack)
字典(Dictionary)
哈希表(Hashtable)
属性(Properties)
以上这些类是传统遗留的,在Java2中引入了一种新的框架-集合框架(Collect
MybatisHelloWorld
3213213333332132
//测试入口TestMyBatis
package com.base.helloworld.test;
import java.io.IOException;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibat
Java|urlrewrite|URL重写|多个参数
7454103
java xml Web 工作
个人工作经验! 如有不当之处,敬请指点
1.0 web -info 目录下建立 urlrewrite.xml 文件 类似如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE u
达梦数据库+ibatis
darkranger
sql mysql ibatis SQL Server
--插入数据方面
如果您需要数据库自增...
那么在插入的时候不需要指定自增列.
如果想自己指定ID列的值, 那么要设置
set identity_insert 数据库名.模式名.表名;
----然后插入数据;
example:
create table zhabei.test(
id bigint identity(1,1) primary key,
nam
XML 解析 四种方式
aijuans
android
XML现在已经成为一种通用的数据交换格式,平台的无关性使得很多场合都需要用到XML。本文将详细介绍用Java解析XML的四种方法。
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object
spring中配置文件占位符的使用
avords
1.类
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.o
前端工程化-公共模块的依赖和常用的工作流
bee1314
webpack
题记: 一个人的项目,还有工程化的问题嘛? 我们在推进模块化和组件化的过程中,肯定会不断的沉淀出我们项目的模块和组件。对于这些沉淀出的模块和组件怎么管理?另外怎么依赖也是个问题? 你真的想这样嘛? var BreadCrumb = require(‘../../../../uikit/breadcrumb’); //真心ugly。
上司说「看你每天准时下班就知道你工作量不饱和」,该如何回应?
bijian1013
项目管理 沟通 IT职业规划
问题:上司说「看你每天准时下班就知道你工作量不饱和」,如何回应
正常下班时间6点,只要是6点半前下班的,上司都认为没有加班。
Eno-Bea回答,注重感受,不一定是别人的
虽然我不知道你具体从事什么工作与职业,但是我大概猜测,你是从事一项不太容易出现阶段性成果的工作
TortoiseSVN,过滤文件
征客丶
SVN
环境:
TortoiseSVN 1.8
配置:
在文件夹空白处右键
选择 TortoiseSVN -> Settings
在 Global ignote pattern 中添加要过滤的文件:
多类型用英文空格分开
*name : 过滤所有名称为 name 的文件或文件夹
*.name : 过滤所有后缀为 name 的文件或文件夹
--------
【Flume二】HDFS sink细说
bit1129
Flume
1. Flume配置
a1.sources=r1
a1.channels=c1
a1.sinks=k1
###Flume负责启动44444端口
a1.sources.r1.type=avro
a1.sources.r1.bind=0.0.0.0
a1.sources.r1.port=44444
a1.sources.r1.chan
The Eight Myths of Erlang Performance
bookjovi
erlang
erlang有一篇guide很有意思: http://www.erlang.org/doc/efficiency_guide
里面有个The Eight Myths of Erlang Performance: http://www.erlang.org/doc/efficiency_guide/myths.html
Myth: Funs are sl
java多线程网络传输文件(非同步)-2008-08-17
ljy325
java 多线程 socket
利用 Socket 套接字进行面向连接通信的编程。客户端读取本地文件并发送;服务器接收文件并保存到本地文件系统中。
使用说明:请将TransferClient, TransferServer, TempFile三个类编译,他们的类包是FileServer.
客户端:
修改TransferClient: serPort, serIP, filePath, blockNum,的值来符合您机器的系
读《研磨设计模式》-代码笔记-模板方法模式
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
配置心得
chenyu19891124
配置
时间就这样不知不觉的走过了一个春夏秋冬,转眼间来公司已经一年了,感觉时间过的很快,时间老人总是这样不停走,从来没停歇过。
作为一名新手的配置管理员,刚开始真的是对配置管理是一点不懂,就只听说咱们公司配置主要是负责升级,而具体该怎么做却一点都不了解。经过老员工的一点点讲解,慢慢的对配置有了初步了解,对自己所在的岗位也慢慢的了解。
做了一年的配置管理给自总结下:
1.改变
从一个以前对配置毫无
对“带条件选择的并行汇聚路由问题”的再思考
comsci
算法 工作 软件测试 嵌入式 领域模型
2008年上半年,我在设计并开发基于”JWFD流程系统“的商业化改进型引擎的时候,由于采用了新的嵌入式公式模块而导致出现“带条件选择的并行汇聚路由问题”(请参考2009-02-27博文),当时对这个问题的解决办法是采用基于拓扑结构的处理思想,对汇聚点的实际前驱分支节点通过算法预测出来,然后进行处理,简单的说就是找到造成这个汇聚模型的分支起点,对这个起始分支节点实际走的路径数进行计算,然后把这个实际
Oracle 10g 的clusterware 32位 下载地址
daizj
oracle
Oracle 10g 的clusterware 32位 下载地址
http://pan.baidu.com/share/link?shareid=531580&uk=421021908
http://pan.baidu.com/share/link?shareid=137223&uk=321552738
http://pan.baidu.com/share/l
非常好的介绍:Linux定时执行工具cron
dongwei_6688
linux
Linux经过十多年的发展,很多用户都很了解Linux了,这里介绍一下Linux下cron的理解,和大家讨论讨论。cron是一个Linux 定时执行工具,可以在无需人工干预的情况下运行作业,本文档不讲cron实现原理,主要讲一下Linux定时执行工具cron的具体使用及简单介绍。
新增调度任务推荐使用crontab -e命令添加自定义的任务(编辑的是/var/spool/cron下对应用户的cr
Yii assets目录生成及修改
dcj3sjt126com
yii
assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问protected下面的文件,但是我们又希望将module单独出来,所以需要使用发布,即将一个目录下的文件复制一份到assets下面方便通过url访问。
assets设置对应的方法位置 \framework\web\CAssetManager.php
assets配置方法 在m
mac工作软件推荐
dcj3sjt126com
mac
mac上的Terminal + bash + screen组合现在已经非常好用了,但是还是经不起iterm+zsh+tmux的冲击。在同事的强烈推荐下,趁着升级mac系统的机会,顺便也切换到iterm+zsh+tmux的环境下了。
我为什么要要iterm2
切换过来也是脑袋一热的冲动,我也调查过一些资料,看了下iterm的一些优点:
* 兼容性好,远程服务器 vi 什么的低版本能很好兼
Memcached(三)、封装Memcached和Ehcache
frank1234
memcached ehcache spring ioc
本文对Ehcache和Memcached进行了简单的封装,这样对于客户端程序无需了解ehcache和memcached的差异,仅需要配置缓存的Provider类就可以在二者之间进行切换,Provider实现类通过Spring IoC注入。
cache.xml
<?xml version="1.0" encoding="UTF-8"?>
Remove Duplicates from Sorted List II
hcx2013
remove
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,Given 1->2->3->3->4->4->5,
Spring4新特性——注解、脚本、任务、MVC等其他特性改进
jinnianshilongnian
spring4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
MySQL安装文档
liyong0802
mysql
工作中用到的MySQL可能安装在两种操作系统中,即Windows系统和Linux系统。以Linux系统中情况居多。
安装在Windows系统时与其它Windows应用程序相同按照安装向导一直下一步就即,这里就不具体介绍,本文档只介绍Linux系统下MySQL的安装步骤。
Linux系统下安装MySQL分为三种:RPM包安装、二进制包安装和源码包安装。二
使用VS2010构建HotSpot工程
p2p2500
HotSpot OpenJDK VS2010
1. 下载OpenJDK7的源码:
http://download.java.net/openjdk/jdk7
http://download.java.net/openjdk/
2. 环境配置
▶
Oracle实用功能之分组后列合并
seandeng888
oracle 分组 实用功能 合并
1 实例解析
由于业务需求需要对表中的数据进行分组后进行合并的处理,鉴于Oracle10g没有现成的函数实现该功能,且该功能如若用JAVA代码实现会比较复杂,因此,特将SQL语言的实现方式分享出来,希望对大家有所帮助。如下:
表test 数据如下:
ID,SUBJECTCODE,DIMCODE,VALUE
1&nbs
Java定时任务注解方式实现
tuoni
java spring jvm xml jni
Spring 注解的定时任务,有如下两种方式:
第一种:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http
11大Java开源中文分词器的使用方法和分词效果对比
yangshangchuan
word分词器 ansj分词器 Stanford分词器 FudanNLP分词器 HanLP分词器
本文的目标有两个:
1、学会使用11大Java开源中文分词器
2、对比分析11大Java开源中文分词器的分词效果
本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那要用的人结合自己的应用场景自己来判断。
11大Java开源中文分词器,不同的分词器有不同的用法,定义的接口也不一样,我们先定义一个统一的接口:
/**
* 获取文本的所有分词结果, 对比