在package.json中的版本号问题
2.14 .1 :分别是“大版本“、“次要版本“、“小版本“
~ 2.14 .1 :
表示:不低于 2.14 .1 的、次要版本号系列都可以
[ 2.14 .1 , 2.15 .0 )
^2.14.1 :
表示:不低于 2.14 .1 的、大版本号系列都可以
[ 2.14 .1 , 3.0 .0 )
完美(水平)居中
sup {
position : relative;
}
sub {
position : relative;
left : 0 ;
right : 0 ;
top : 0 ;
bottom : 0 ;
margin : auto;
}
完美(垂直)居中——flexbox
parentElement {
display :flex ;
display : -webkit-flex ;
align-items :center ;
}
new操作符经历了哪些步骤
① 创建一个新的对象; ② 将构造函数的作用域赋值给新的对象;(此时this指向新的对象) ③ 执行构造函数里的代码;(为这个新对象添加属性) ④ 返回一个新的对象
js创建对象的模式
工厂模式:
function factory (name,age) {
var obj = {};
obj.name = name;
obj.age = age;
return obj;
}
var p1 = factory("name" ,21 );
构造函数模式:
function Person (name,age) {
this .name = name;
this .age = age;
}
var p2 = new Person("carl" ,21 );
js的继承:
js实现继承的主要方法:原型链; 基本思想是:利用原型,让一个引用类型去继承另外一个引用类型的属性和方法; 用的比较多是:组合继承。
function Sup (name) {
this .name = name;
this .color = ['1' ,'2' ];
}
Sup.prototype.sayName = function () {
alert(this .name);
}
function Sub (name,age) {
Sup.call(this ,name);
this .age = age;
}
Sub.prototype = new Sup();
Sub.prototype.constructor = Sub;
var p1 = new Sub("carl" ,21 );
alert(p1.color);
p1.sayName();
优点: ① 利用“原型链”实现对原型的属性和方法的继承; ② 利用“借用构造函数”实现对实例属性的继承。
跨域八大家
① documetns.domain + iframe (只有主域相同的时候,才能使用) ② 动态创建script ③ location.hash + iframe ④ window.name + iframe ⑤ postMessage ⑥ CORS (CORS的背后思想,就是使用自定义的HTTP头部让服务器进行沟通,从而决定请求或相应是应该成功还是失败) ⑦ JSONP (JSONP包含两部分:回调函数、数据) 缺点:1)安全问题;2)要确定jsonp请求是否失败并不容易
你好,WebSocket
WebSocket是一种浏览器API,他的目的是在一个单独的持久连接上建立全双工、双向通信; 原理是:js创建WebSocket后,会发送一个HTTP请求到服务器端以建立连接。服务器端响应后,建立的连接会HTTP升级,成为WebSocket协议。
优点: ① 支持服务器端及时的消息推送; ② 复用长连接; ③ 在同一条WebSocket连接上能同时并发多个请求;(A请求的响应未到达,可以发送B) 缺点: ① 需要维护WebSocket连接; ② 消息推送比较复杂; ③ 技术比较新,能用的组件少。
float的四种属性
left right none inherit
SVG和Canvas的却比
SVG 是一种使用XML描述2D图形的语言; - 产生DOM的数量多; - 可以使用CSS设置动画样式
Canvas 是通过js来绘制2D图形; - 产生的DOM数量少; - 不可以用CSS设置动画样式
[“1”,”2”,”3”].map(parseInt)的执行结果是[1,NaN,NaN]
因为map有3个参数(val,idx,function), parseInt有2个参数(val,进制); 这样写的话,会给parseInt传入两个参数,即val,indx;那么将他们按索引值进行进制转换,变成NaN了
Javascript的关键字
with、void、class
Web应用从服务器主动推送Data到客户端有哪些方式?
① HTML5 Websocket; ② WebSocket通过Flash; ③ XHR长时间连接 ④ XHR Multipart Streaming; ⑤ 不可见的Iframe
对网站文件和资源进行优化
① 文件合并 ② 文件最小化/文件压缩 ③ 使用CDN托管 ④ 缓存的使用
typeof NaN === ‘number’,
typeof Infinity === ‘number;’
typeof (new Number(1)) === ‘object’
setTimeout中所执行函数中的this,永远指向window(非严格)
注意是要延迟执行的函数中的this哦 指向undefined(严格)
“use strict”的作用
① 变量在声明前使用会报错; ② 不能delete变量或函数; ③ 对象的属性名不能重复; ④ 不能使用with; ⑤ 不能使用eval; ⑥ 对arguments参数: 1)不能定义arguments; 2)不能修改arguments; 3)不能使用arguments.callee和arguments.caller; 4)不再追踪参数 (即同步,在函数体内,如果改了同名参数,arguments[0]这些不会同步变)的变化!
arguments.callee和arguments.caller的区别
arguments.callee指向该arguments的函数对象。 arguments.caller没啥用,在严格模式下无法访问,非严格模式下的值也为undefined,而且貌似被废弃了。
请求方式 资源路径 协议及协议版本 Accept :客户端支持的资源类型 (有Accept-Encoding压缩数据的类型、Accept-Language:语言类型) Connection :客户端和服务端的连接关系 Cookie : Host :连接的目标主机和端口号 Referer :告诉服务端,客户端来自哪里 User-Agent :客户端版本号的名字 Date :客户端访问服务端的时间
Response(9)
协议及协议版本 状态码 描述信息 Content-Type :服务端发送的类型及采用的编码方式 (有Content-Encoding压缩编码类型、Content-Language:语言类型) Connection :服务端和客户端的连接关系 Location :服务端需要客户端访问的页面路径 Server :服务端的Web服务端名 Refresh :服务端要求客户端x秒后刷新,然后访问指定的页面路径 Last-Modified :服务端对该资源最后修改的时间,检验协商缓存的属性 Expires :检验强缓存的属性 Cache-Control :检验强缓存的属性 Date :服务端响应客户端的时间
函数提升先,还是变量提升?
1、函数提升优先,变量提升再后;
2、变量**声明* *,不会覆盖掉之前的函数声明;
3、变量* *赋值* *,才会覆盖掉之前的函数声明。
cellpadding和cellspacing
cellpadding:单元格的内边距padding cellspacing:单元格和表格的边距之间的距离
H5的data
< input id= "test" type = "radio" data -name = "he" / >
用正则表达式,将strA替换成strB
strA =
'HelloWorld, [img:(http://www.baidu.com/pic.png)]'
strB =
'HelloWorld, '
//解法(注意转义字符的使用):
var reg=/\[\w+:\((\S+)\)\]/
strA.replace(reg,'HelloWorld, ' )
//其中\$1 表示匹配成功的的第一个分组,分组就是从左到右,各个括号的内容,上面就是(\S+)
//切记,这个$1 、$2 不能直接在第二个参数的位置,用作obj读取对应的属性,例如:
strA.repalce(reg,obj[$2 ]);// 会undefined
应该弄一个匿名函数返回:
/*
strA.repalce(reg,function($0 ,$1 ,$2 ){
console.log ($0 );
console.log ($2 );
$2 = obj[$2 ];
return $2 ;
})
*/
下面函数输出什么?
function test () {
var n=4399 ;
function add () {
n++;
console.log(n);
}
return {n:n,add:add}
}
var result = test();
var result2 = test2();
result.add();
result.add();
console.log(result.n);
result2.add();
块内声明函数的做法
if (x){
var foo = function () { }
}
f能取到a,b么?
var F=function () ;
Object.prototype.a = function () { };
Function .prototype .b = function () { };
var f = new F();
div p和div>p和div+p的区别
div p { /*div的子子孙孙p*/ } div>p { /*div的子p*/ } div+p { /*div的下一个兄弟p*/ }
stopPropagation( )和preventDefault( )的区别?
e.stopPropagation( );//阻止事件向父容器继续传递 e.preventDefault( );//阻止事件的默认行为(
不会跳转)
var arr =[];arr[0]=1;arr[1]=2;arr.foo=”hsy”;arr.length=?
2。 因为: ① arr也是 Array对象,只是额外多了一种存储数据的模式; ② arr.length和arr.foo都是arr的属性,是并列的,是负责统计数组里的长度; ③ 同时,数组里的方法也不改变外面的属性。
10s后,调用check( )函数?
window.setTimeout(check,10000); 或者window.setTimeout(“check( )”,10000);
解释语言的特性有什么?
翻译(解释 or 编译)
高级语言 ———–> 机器语言 【解释语言】:不用编译的。每个语句都是执行时才翻译,效率低 ,且不独立 【编译语言】:要编译的啊。执行前,会编译成文件,效率高 ,且独立
CSS选择器的*代表所有元素,但是不能组合写
例:*p是错的
四舍五入Math.round(3.14)
是看 小数点后一位 四舍五入的,后面都不管,最后得出是整数
window对象产生的框
提示框:window.prompt( ); 警示框:window.alert( ); 确认框:window.confirm( );
history对象的方法:
back():加载history列表中的前一个URL; forward():加载history列表中的下一个URL; go():加载history列表中的指定页面;
go()的参数可以传入数字(-1上一个页面、1前进一个页面),也可以传入字符串(URL列表中第一个匹配的完整URL);
DHTMLX Touch JavaScript 是H5的框架
它是针对移动和触摸设备的js框架 兼容主流的web浏览器 可以针对移动和触摸设备创建跨平台的web应用
bootstrap的栅格系统
①Container包含row,row包含column; ②column里面也可以包含row(列的嵌套);
自闭合标签
、
、
、link/
、
判断arr是不是一个数组?
①typeof arr;(不可行 ,都是Object); ②arr instanceof Array;(不可行 ,在跨frame对象构建的场景会失效); ③Object.prototype.toString.call(arr);//”[object Array]”;(可行)
实现跨域
①jsonp、GET; ②iframe的document.domain
① element.disabled = true; ② element.setAttribute(“disabled” , true);//实际上第二个参数无论如何,就是会禁用的
stopPropagation( ) 用于阻止冒泡
preventDefault( ) 用于阻止默认事件的默认操作
+ 和 三目运算符
console.log(’ Value is ’ + (val != ‘0’) ? ‘define’ : ‘undefine’); //输出define,因为+号优先级高于三目运算符,不管括号是啥,前面肯定是true
函数的调用方式
1、直接调用; 2、作为对象的方法调用; 3、作为构造函数调用; 4、通过call和apply方法调用
关于
H5标准的链接默认带下划线 bootstrap链接只有hover状态下才带下划线
sort( )
默认是按首字符的字符串编码排序
计算两个数的最大公约数
function gongyueshu (x,y) {
while (x
var temp = x
x = y;
y = temp;
}
return y;
}
清除浮动的三种方法
①、在最后新增 一个元素,并设为clear:both ②、为父元素新增 伪元素:after ③、父元素设为overflow:hidden
.outer {
zoom: 1 ;
}
.outer :after {
clear :both;
content : ' ' ;
display :block;
width : 0 ;
height : 0 ;
visibility :hidden;
}
手写直角梯形
//HTML Code
<div class ="example" > div >
<style >
.example {
position : relative ;
width : 100 px ;
height : 50 px ;
}
.example :before , .example :after {
content : ' ' ;
position : absolute ;
top : 0 ;
}
.example :before {
left : 0 ;
width : 50 px ;
height : 50 px ;
background-color : orange ;
}
.example :after {
right : 0 ;
border : 25 px solid ;
border-color : transparent transparent orange orange ;
}
style >
还是要说说盒模型
width(也就是我们平时设定的width:111px)、 padding、 border、 margin
W3C标准盒模型
width、padding、border、margin四个独立分开的, 我们设定width是多少,内容的width就是多大
IE盒模型
width是包含了padding、border的,只有margin独立 我们设定width是多少,内容的width = 我们设定的width - padding - border
用代码说话
< div class= "imgBox" id= "contentBox" >
< img src= "/image/header.jpg" / >
< /div>
< div class= "imgBox" id= "borderBox" >
< img src= "/image/header.jpg" / >
< /div>
. imgBox img{
width: 140 px;
height: 140 px;
padding: 20 px;
border: 20 px solid orange;
margin: 10 px;
}
#contentBox img{
box-sizing : content-box ;
-ms -box -sizing : content-box ;
-webkit -box -sizing : content-box ;
-o -box -sizing : content-box ;
-moz -box -sizing : content-box
}
#borderBox img{
box-sizing : border-box ;
-ms -box -sizing : border-box ;
-webkit -box -sizing : border-box ;
-o -box -sizing : border-box ;
-moz -box -sizing : border-box ;
}
关于栅格系统
1、会有自动的padding样式 2、其字体默认是14px 3、其box-sizing默认为border-box
拾色器:color 时间:date、datetime、datetime-local、month、week、time 范围:number、range、url 日常:tel、email 搜索:search
层级谁最高?
帧元素 > 表单元素 > 非表单元素
CSS sprites
①可以将零星图片都包含到一张大图中; ②利用css的”background-image”、”background-repeat”、”background-position”的组合进行背景定位; ③减少了 总的图片字节 ,很好地减少了网页的http请求,从而大大地提高页面的性能; ④整理起来更为方便,同一个按钮不同状态的图片也不惜要一个个切割出来并个别命名
a:link{..} a:visited{..} a:hover{..} a:active{…}
css的关于链接的固定顺序
var a=[5,3,2,1];a.splice(7,1,”hehehe”);a=?
a=[5,3,2,1,”hehehe”];//因为a[7]不存在,那它就不会删任何的,直接在最后插
var a =[ ];a[0]=1;a[1]=2;a[5]=4,那么a.length=?
6
IE6/7/8
①可以用createElement ②IE6/7不能通过setAttribute设置【元素的class属性】、也不能【为元素绑定事件】 (即element.setAttribute(“style”,”…”)、element.setAttribute(“class”,”…”)是无效 的!)
元素的焦点
onblur:失去焦点 onFocus:获得焦点
哪个H5内建对象用于在画布上的绘制?
getContext
主流浏览器内核私有属性css前缀
-moz (mozilla内核,firefox)[Gecko] -webkit (safari , chrome)[Webkit] -o (opera)[Presto] -ms(trident,ms是 mircosoft 缩写!)[Trident]
开箱即用的UI控件
YUI(Yahoo! User Interface) ExtJS
位操作符
~ 按位非 & 按位与 | 按位或 ^ 按位异或 << 左移(1<<5 为 16) >>>
无符号右移 >>
有符号右移
H5的本地存储
IndexedDB 和 Web Storage
IndexedDB:在本地存储大量结构化数据 ; WebStorage:在本地存储数据(用字符串键值 对的方式) 1、cookie 2、localStorage 3、sessionStorage 4、globalStorage 5、userData
display:inline
在IE6/7不怎么兼容
脱离文档流
position:absolution(绝对定位) position:fixed(固定定位) float:left 以上三者都是脱离文档流
position:relative(相对定位)就不会脱离 !
ajax支持返回以下类型
xml、 json、 jsonp、 html、 text、 script
JS的内部对象
①History对象包含用户(在浏览器窗口中)访问过的URL; ②Location对象包含有关当前URL的信息; ③Window对象表示浏览器中打开的窗口; ④Navigator对象包含有关浏览器的信息
声明function的两种方法
function f1 () {
...
}
var foo = function bar () {
return 1 ;
}
typeof foo;
typeof foo();
typeof bar;
typeof bar();
转成Boolean类型和对象的区别
var x = new Boolean (false );
if (x){
alert("hi" );
}
var y = Boolean (0 );
if (y){
alert('hello' );
}
js放在
会导致什么?
1、【从上往下】如果js放在
,那意味着要下载完
里的js,会出现短暂的空白页,因为加载到
才开始显示页面; 2、【预先加载】说到预先加载,那就是dom还没有出来,不能对dom进行任何操作 除了window.onload 或者 ( d o c u m e n t ) . r e a d y ( f u n c t i o n ( ) … 或 者 ( d o c u m e n t ) . r e a d y ( f u n c t i o n ( ) … 或 者 (function( ){…})
JavaScript Node
process.stdin.resume();
process.stdin.setEncoding('ascii' );
var input = "" ;
var input_array = "" ;
var count;
var result = [];
var arr_y = [];
var arr_x = [];
process.stdin.on('data' , function (data) {
input += data;
});
process.stdin.on('end' , function () {
input_array = input.split("\r\n" );
var len = input_array.length;
for (var i=0 ; iif(i == 0 ){
count = input_array[i];
} else {
arr_x = arr_x.concat(input_array[i].split(' ' ));
}
}
console.log(calculate(arr_x));
process.exit(0 );
});
function calculate (arr_x) {
arr_y = arr_x.splice(count,count);
arr_x = arr_x.slice(0 ,count);
for (var i=0 ; iparseInt(arr_x[i]) + parseInt (arr_y[i]) - 2 ;
}
return Math .min.apply(this ,result);
}
JavaScript V8
var count ;
var arr_x = [];
var arr_y = [];
var arr_z = [];
var result = [];
var input_array = [];
var line;
while (line=readline()){
input_array.push(line.split("\n" ).toString());
}
print(cut(input_array));
function cut (input_array) {
count = parseInt (input_array.splice(0 ,1 ));
arr_x = input_array.splice(0 ,1 );
arr_x = arr_x[0 ].split(" " );
arr_y = input_array[0 ].toString().split(" " );
for (var i=0 ; iparseInt(arr_x[i]) + parseInt (arr_y[i]) - 2 ;
}
return Math .min.apply(this ,result);
}
HTML5新增的表单元素
· datalist 规定输入域的选项列表 · keygen 提供一种验证用户的可靠的方法 · output 用于不同类型的输出
元素分类
1、块级元素block(自动换行,可设置宽高): 、
~
、
、
、
、
、
2、行内元素inline(不会自动换行,不能设置宽高):
、
、
、、
、、
3、行块级元素inline-block(拥有内在尺寸,不能自动换行,可设置宽高):
、
、
、
数据类型转Boolean
数据类型
true
false
Boolean
true
false
String
任何非空字符串
空字符串
Number
非零数值
0
Object
任何对象、arr
null
Undefined
无
必定false
转Number(见到 == ,就Number 左右!)
特殊情况:false == null ;//输出为false;
数据类型
Boolean
true - 1
false - 0
Number
原
样
数组
[ ] - 0
[有,东,西] - NaN
对象
都是NaN
都是NaN
String
只包含数字(或是浮点数) - 数字 (或是浮点数)
String
其他进制 - 十进制数字
String
“” - 0
String
其他 - NaN
undefined
NaN
关键词高亮显示
下面这个js程序会输出什么??
function Foo () {
var i = 0 ;
return function () {
console.log(i++);
}
}
var f1 = Foo(),
f2 = Foo();
f1();
f1();
f2();
HTML5,获得用户的当前定位位置
getCurrentPosition( );//获取用户当前定位位置
Web Worker
运行在后台的JavaScript程序,不会影响页面的性能
innerHTML、outerHTML以及innerText、outerText
innerHTML:获取元素里的子元素、设置元素里的子元素 outerHTML:获取元素自身 和子元素、设置元素里的子元素(整个元素会被替换)
innerText:获取元素里的所有文本节点,设置元素里的文本 outerText:获取元素里的所有文本节点,设置元素里的文本(整个元素会被替换)
一次性加载1000个左右的随机数,后续只对该集合进行遍历,哪种结构存放好?
链表
面向对象的基本原则是
单一职责原则、开放封闭原则、依赖倒置原则
“节俭排序”的算法有?
“节俭排序”也就是一对数字不进行2次或2次以上的比较 插入 排序 归 并排序、
平衡二叉树的左右子树的高度之差的绝对值不超过1
选择排序是不稳定的
flash和js通过什么类进行交互?
ExternalInterface
NaN的一些东西
“A”-“B”;//NaN “A”-“B”+2;//NaN+2还是NaN “A”-“B”+”2”;//这时候变成NaN2了,因为2是字符串,直接接到后面而已!
闭包里喜欢考的
var a,b;
(function(){
console. log (a);
console. log (b);
var a= b= 3 ;
console. log (a);
console. log (b);
})()
console. log (a);
console. log (b);
var foo = {n:1 };
(function (foo) {
console.log(foo.n);
foo.n = 3 ;
var foo = {n:2 };
console.log(foo.n);
})(foo);
console.log(foo.n);
Math.max( )
这个函数只接受任意个Number类型的数字,不能是数组 ! 不过,可以这样来传个数组进去:
apply:
Math.max.apply(Math,arr);
导入样式@import url(“…”)
发生在.css文件里导入另一个css样式表!不能直接在页面中! 其他三种方法:
1、外部样式
2、内部样式
3、内联样式
..
link属于XHTML标签,而@import完全是CSS提供的一种方式; 当一个页面被加载的时候,link引用的CSS会同时被加载,先加载完的优先解析;而@import引用的CSS会等到页面全部被下载完再被加载; link在支持CSS的浏览器上都支持,而@import只在5.0以上的版本有效
置换元素有哪些?
置换元素:浏览器根据元素的标签和属性,来决定元素的具体显示内容: ,根据src属性
,根据type属性
反而,就不是了,因为它里面的文字将被全部显示
验证字符串的完整性的函数
md5( )、sha1( )、crc32( )
不是合法的HTML5标签
合法的有:
、
‘+new Array(017)’ 输出?( )
“+”:这里的+相当于一元运算符,效果是可以将后面使用Number(), “017”:这里相当于15的八进制 也就是将一个没有赋值的,长度为15的数组转成Number(),效果是NaN
CSS样式,能够用于边距的单位
em:值不固定,会继承父集元素的字体大小 px:固定单位 pt:绝对长度单位,不随浏览器分辨率变化而发生视觉变化
有webkit内核的浏览器
Safari chrome 搜狗浏览器(双核:银行网站IE,其他网页和Webkit)
null instanceof Object
错!尽管typeof null;//返回”object”,但是null不是object类型,只是遗留的从错误!null不是object创建的实例对象!!!
null == undefined
true
string转boolean
若string有内容,不为空”“,则为true;否则false
clear的作用是什么?
指明 该元素周围 不可出现浮动元素
与浏览列表有关的对象:
1、history 2、screen 3、location 4、Navigator
iframe的使用场景有?
1、与第三方域名下的页面共享cookie 2、上传图片,避免当前页刷新 3、左边固定右边自适应的布局 4、资源加载
Ajax与Flash的优缺点
Ajax 优势:开放性、易用性、易于开发 缺点:可能破坏浏览器的后退功能 Flash 优势:多媒体处理,可以更容易的调用浏览器以外的外部资源 缺点:文件经常会很大,用户第一次使用的时候需要较长的等待时间
原始值(primitive value)
即js里6种基本类型(undefined、null、String、Boolean、Number、Symbol)的值
Symbol可以生成全局唯一的一个值;
用法:
var mySymbol = Symbol();
可以用symbol来作为对象的属性值,因为它不等同于其他任何字符串,这个symbol-keyed属性可以确保不会和其他任何属性冲突
for-in循环只会遍历对象的字符串类型的键,Symbol会被忽略
this题
var color = "green" ;
var test4399 = {
color:'blue' ,
getColor:function () {
var color = "red" ;
alert(this .color);
}
}
var getColor = test4399.getColor();
getColor();
test4399.getColor();
Promise的状态
Pending(未完成) Resolved(已完成) Rejected(失败) 变化途径有两种: 异步操作成功 Pending —————> Resolved
异步操作失败 Pending —————> Rejected
作用域链
作用域链,是由一个个活动对象构成;
当一个函数开始执行时,会创建一个执行环境,这时当前运行函数作用域中的局部变量、命名参数会被加入到一个而被称为“活动对象”的作用域对象中。
延长作用域链:原理是在作用域链前端暂时增加一个活动对象,这个活动对象会在代码执行后被移除。
with
会将指定的对象添加到作用域最前端中。
function builderUrl () {
var qs = "?debug=true" ;
with (location){
var url = href + qs;
}
return url;
}
try-catch
会创建一个新的变量对象(包含被抛出的错误对象声明e)添加到作用域最前端中
类型的隐式转换
在算术运算中, +号:数字隐式 转换为 字符串; 其余的运算符号:字符串 隐式转换成 数字
typeof 判断的类型、局限性
返回值
原因
undefined
未声明或未定义
boolean
布尔值
string
字符串
number
数值
Object
Array、Null或对象
function
函数
局限性:都返回“Object”; 优点:if(a){…}//若“a未声明”会报错;可改用if(typeof a!=”undefined”){…}
instanceof 判断实例
不可厚非,可用instanceof来判断是Array,还是Object a instanceof b;//a是b的实例,则true 更多是用来判断子类、父类的继承关系
准确判断数据类型
Object.prototype.toString.call(要判断的) //返回值[Object 准确类型]
js延迟加载中,只有IE浏览器支持的是
defer(用法:放在script
标签中)
编码
GBK只支持简体中文字 UTF-8支持简体中文字、繁体中文字、英文、日文、韩文等语言
JS框架中,包含开箱即用的有
ExtJS、YUI (jQuery、MooTools没有)
CSS可继承元素:
可继承:即子节点默认使用父节点的样式属性。 文字:font、white-space、letter-spacing、word-spacing、line-height 对齐:text-align 其他:visibility、cursor
Bootstrap3有哪些浏览器支持?
不支持: 1、手机(Android、IOS)上的Opera 2、电脑(Window)上的Safari
Bootstrap中,一个元素需要在打印时隐藏,使用的类是:
hidden-print
当margin-top、padding-top的值是百分比时,分别是如何计算的?
都是相对于最近父级块级元素的width
改变作用域链
with、 try catch、 eval
白屏时间first paint 和可交互时间dom ready的关系是?
没关系。 first paint:从打开页面,到页面有东西呈现时; domreadyTime:用户可以进行正常的点击、输入等操作 所以是先first paint,再domready
简单选择 和 选择 排序
排序算法中不稳定的
(见习快怼)简单选择排序、希尔排序、快速排序、堆排序
JS的一些全局函数
①有关解码、编码的: 解:decodeURI( )、 解:decodeURIComponent( )、 编:encoeURI( )、 编:encodeURIComponent( )、 编:escape( )、 解:unescape( ) ②有关数据类型的: isFinite( )、 isNaN( )、 Number( )、 String( )、 parseFloat( )、 parseInt( )、 ③其他: eval( )、//计算字符串的值eval(“2+3”);//5
计时函数
①setTimeout(function , millisec) - 定义时,会返回一个计时ID,在clearTimeout可以传入这个ID来停止。 - 不循环,可以通过函数自身调用来循环
function count1 () {
setTimeout("count1()" ,1000 );
}
count1();
②setInterval(function , millisec) - 定义时,会返回一个计时ID,在clearInterval可以传入这个ID来停止。 - 第二个参数是循环间期
去重(单个)
function normalize (arr) {
var i , map = {} ;
for (i = arr. length - 1 ;i >= 0 ; --i ){
if(arr[i] in map){
arr.splice(i,1 );
} else {
map[arr[i]] = true;
}
}
return arr;
}
去重(两个)
思路: ①分别将arr1、arr2去重; ②将arr1的各项加入到map,作为它属性; ③将arr2的各项与存在的属性对比 if(arr2[i] in map){…}
Object.getOwnPropertyNames(对象的变量名) 可以获得由这个对象里面属性组成的数组
不改变原数组(4):
concat( ): 连接两个或多个数组 返回:连接后新数组的一个副本
join( ): 将数组中所有元素加入到一个字符串 返回:一个字符串
slice( ): 截取数组 [ ) 返回:被截取的那段
toString( ): 把数组转为字符串 返回:字符串
改变原数组(7):
pop( ): 删除数组最后一个元素 返回:被删的元素
push( ): 添加一个或多个元素在数组最后 返回:新数组的长度
shift( ): 删除数组最前一个元素 返回:被删的元素
unshift( ): 添加一个或多个元素在数组最前 返回:新数组的长度
splice( ): 从数组中添加/删除项 返回:被删的元素
reverse( ): 将数组逆置 返回:逆置后的新数组
sort( ): 将数组排序(传入一个比较函数的名字) 返回:排序后的新数组
正则
字符类
[…] 方括号内的字符(一次) [^…] 除了方括号内的字符(一次) . 除了换行符和unicode行终止符之外的其他字符 \w [a-zA-Z0-9_] \W [^a-zA-Z0-9_] \s 任何Unicode空白符 \S 任何非Unicode空白符(所以一般用[\s\S]来匹配所有字符,即完全通配模式) \d [0-9] \D [^0-9] \b 单词边界 \B 非单词边界
边界类
^ 匹配输入开始 $ 匹配输入结尾
匹配次数
{n,m} 即数学上的至少n次,至多m次,[n,m] {n,} 即数学上的至少n次,[n,+∞) {n} 即匹配n次 ? 0次或1次 * 0次或多次 + 1次或多次
RegExp(正则对象)的方法有哪些?(3)
compile() test():匹配字符串,存在true,否则false exec():匹配字符串,存在返回位置
请描述cookies、sessionStorage、localStorage的区别?
①存在方式。 cookie总是在浏览器端和服务器端来回传递, sessionStorage、localStorage作为本地存储的数据;
②大小。 cookie只能存储4k以下, sessionStorage、localStorage可以存储5M或更大的数据;
③有效期。 cookie在其设置的有效期内都有效, sessionStorage在浏览器窗口关闭前都有效, localStorage一直都有效;
④作用域。 cookie、localStorage在同源窗口中共享, sessionStorage不在不同浏览器的窗口中共享,即使同一个页面
任何的函数调用,都可以用call替换法
say("hi" );
//say.call(window,"hi" ),意为在window对象上执行say方法
//若函数function (){... },作为对象的方法,this是对象;作为函数,this是window
//var that = this ;使用that保留当前函数执行上下文的this
为什么new时,this指向新对象
function Person (name) {
this .name =name ;
}
var foo = new Person("XiaoMing" );
var bar = (function (name) {
var _newObj = {
constructor : Person,
__proto__ : Person.prototype
}
_newObj.constructor(name);
return _newObj;
})();
this:
http://blog.csdn.net/hellochenlu/article/details/52244276
HTML的严格模式与怪异模式:
声明则是前者,反之后者
ECS5的strict mode:
声明(用’use strict’):在
里 ,或是function(){ … }
①不用var 声明,会报错
②对象的属性、函数的参数不能重名
③禁止使用八进制数字(0 开头)
④禁止使用with
⑤禁止使用arguments .callee
[ ].forEach、[ ].map的区别:
var data1 = [1 ,2 ,3 ,4 ];
var data2 = [1 ,2 ,3 ,4 ];
var res = data.forEach (function (val,idx,arr) {
arr[idx] = val * val;
});
var res2 = data.map(function (val,idx,arr) {
return val * val;
});
. e a c h ( ) 和 . e a c h ( ) 和 ( ).each . e a c h ( ) 处 理 数 组 ; . e a c h ( ) 处 理 数 组 ; ( ).each处理dom;
原型链:
每个对象都存在一个单向的原型链表。当访问该对象的属性或方法时,首先会尝试读取对象本身的属性或方法,如果找不到,会读取原型对象的属性或方法,如果再找不到,会读取原型对象的原型对象的属性或方法。 http://www.cnblogs.com/qieguo/p/5451626.html
闭包:http://www.cnblogs.com/qieguo/p/5457040.html
Call方法:
http://www.cnblogs.com/jerome-rong/archive/2012/05/31/2528556.html
语法糖:
①是汉语里的成语; ②计算机语言中添加的某种语法,它对语言的功能并没有影响,但是更方便程序员使用。增加程序可读性,减少代码出错; ③越甜,调试查错越苦! 如:数组的取值:get_Array(Array,Vector(i,j)),变成Array[i][j]
机会一定会留给有所准备的人; 加油! 晚安~
你可能感兴趣的:(Font-End(理论知识))
Websoft9 开源软件实操平台:快速积累企业级软件技能,深入理解真实业务场景
开源创业
引言:打破“纸上谈兵”的实训困境当前高校技术教育普遍面临一个矛盾:学生对开源工具的理论知识掌握充分,但在真实业务场景中常因环境配置复杂、工具链割裂而难以落地。例如,部署一套完整的电商系统需协调数据库、服务器、安全策略等多环节,传统虚拟机环境难以模拟企业级复杂度。Websoft9作为开源软件自动化部署工具,通过预集成200+企业级应用模板(如GitLab、Odoo、Jenkins)和全流程管理能力,
java实现XZordering算法(附带源码)
Katie。
Java 实战项目 java 算法 开发语言
Java实现XZOrdering算法详解目录项目背景与简介1.1项目概述1.2开发动机与应用场景1.3XZOrdering算法简介相关理论知识与数学基础2.1空间映射与局部性保持2.2Morton编码(Z-order)的原理2.3位交叉(BitInterleaving)技术2.4算法复杂度与性能考量系统架构与模块设计3.1整体架构设计3.2主要模块划分3.3类图与流程图项目实现思路与详细设计4.1
网络安全最新HVV(护网)蓝队视角的技战法分析_护网技战法报告(1),2024年最新网络安全开发基础作用
2401_84520093
程序员 网络安全 学习 面试
如何自学黑客&网络安全黑客零基础入门学习路线&规划初级黑客1、网络安全理论知识(2天)①了解行业相关背景,前景,确定发展方向。②学习网络安全相关法律法规。③网络安全运营的概念。④等保简介、等保规定、流程和规范。(非常重要)2、渗透测试基础(一周)①渗透测试的流程、分类、标准②信息收集技术:主动/被动信息搜集、Nmap工具、GoogleHacking③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF
无人机学习入门
一颗微竹
无人机 无人机
设备:电脑+遥控器+小飞机+fpv+充电器+各种工具配件设备最开始只有电脑,慢慢的东西越来越多。学习理论知识空域与航空法律法规、安全教育无人机基础(在mooc平台和智慧职教平台上很多课程,当然B站也很多,自学基础内容)目录大概如下:1)无人机的历史2)无人机分类3)无人机系统组成(直升机、多旋翼、固定翼无人机、其他特殊结构)4)无人机飞行原理、空气动力学5)飞行控制、导航系统6)任务载荷学习实践知
精选AI大模型读物:《从ChatGPT到AIGC:智能创作与应用赋能》——探索智能时代的创作力量
AGI大模型老王
人工智能 chatgpt AIGC AI大模型 大模型
自2023年以来,AI聊天机器人ChatGPT火爆互联网,其颠覆性的使用体验重塑了人们对于AI的认知。而ChatGPT背后的技术―AIGC也引起了互联网圈的关注,打开了人们对AI应用的想象空间。本书从ChatGPT入手,以AIGC为中心,对AIGC的理论知识、应用场景、未来发展等内容进行了全面的梳理。首先,本书对AIGC的概念、技术构成、产业生态、市场现状等进行了讲解,以便读者对AIGC形成一个清
k8s系统学习路径
LCY133
kubernetes 学习 容器
学习Kubernetes(K8s)需要循序渐进,结合理论知识和实践操作。以下是学习Kubernetes的推荐步骤:1.先决条件•掌握容器基础:先学习Docker,理解容器化概念(镜像、容器、仓库)、Dockerfile编写和容器生命周期管理。•熟悉Linux基础:了解Linux命令行操作、网络、文件系统等。•了解云计算概念:如虚拟化、负载均衡、服务发现、分布式系统等。2.Kubernetes核心概
2024年12月CCF-GESP编程能力等级认证C++编程四级真题解析
前网易架构师-高司机
c++ 开发语言 CCF-GESP
四级真题的难度:一、总体难度评价CCF-GESP编程能力等级认证C++四级真题的难度通常被认为相对较高。它不仅要求考生具备扎实的C++编程基础,还需要考生掌握一定的算法和数据结构知识,以及良好的问题解决能力。二、具体难度分析理论知识考察:单选题和判断题中,会涉及C++语言的理论基础知识,如数组的存储原理、函数的各种传参方式、指针、引用等。这些题目要求考生对C++语言有深入的理解。编程技能考察
搞定leetcode面试经典150题之链表
醒了就刷牙
LeetCode刷题 leetcode 面试 链表
系列博客目录文章目录系列博客目录理论知识单向链表双向链表例题206.反转链表92.反转链表II27.回文链表141.环形链表21.合并有序链表2.两数相加19.删除链表的倒数第N个结点138.随机链表的复制82.删除排序链表中的重复元素II61.旋转链表86.分隔链表理论知识链表是数据结构中一种非常常见且基础的结构,在Java中,链表被广泛应用于解决动态数据存储问题。与数组不同,链表的元素(节点)
搞定leetcode面试经典150题之双指针
醒了就刷牙
LeetCode刷题 leetcode 面试 算法 java
系列博客目录文章目录系列博客目录理论知识例题125.验证回文串392.判断子序列167.两数之和Ⅱ-输入有序数组283.移动零简单非面试经典150题11.盛最多水的容器中等15.三数之和中等很多内容借鉴B站蜜糖,他讲的很好理论知识双指针虽然是直接用它的理论知识来命名,但是使用两个指针的这一点只是它的表象。双指针:由于数据特征的有序性(大小或者正负),所以可以证明当前节点一定是优于过往节点,从而可以
搞定leetcode面试经典150题之哈希算法
醒了就刷牙
LeetCode刷题 哈希算法 leetcode 面试 算法
系列博客目录搞定leetcode面试经典150题之哈希算法搞定leetcode面试经典150题之双指针搞定leetcode面试经典150题之滑动窗口文章目录系列博客目录理论知识1.哈希函数(HashFunction)2.哈希表(HashTable)通过HashMap实现3.哈希算法的应用4.哈希算法的时间复杂度编程理论1.HashSet的工作原理2.HashMap(哈希表)的工作原理3.哈希表中的
字典树(Trie) 理论知识复习及精选例题解析
BrainWen1
算法 java c++ 数据结构 python leetcode vscode
字典树理论知识复习及精选例题解析一、字典树理论知识二、精选例题解析例题1.P8306【模板】字典树例题2.P2580于是他错误的点名开始了例题3.P10471最大异或对TheXORLargestPair三、字典树的使用思路和细节使用思路细节注意四、总结一、字典树理论知识1.定义字典树(Trie)字典树(Trie)字典树(Trie),又称前缀树,是一种树形数据结构,用于高效地存储和检索字符串集合。它
并查集(Disjoint Set) 理论知识复习与例题解析
BrainWen1
数据结构 算法 c++ python java c语言 vscode
并查集理论知识复习与例题解析一、并查集(DisjointSet)概念二、例题解析例题1:P3367【模板】并查集例题2:P1551亲戚例题3:P1955[NOI2015]程序自动分析三、总结一、并查集(DisjointSet)概念1.出现背景并查集(DisjointSet)的出现源于数学中等价关系的高效管理需求和计算机算法对集合操作的性能优化。其核心价值在于通过简洁的结构和高效的操作(接近常数时间
爬虫的精准识别:基于 User-Agent 的正则实现
伏羲栈
Java 爬虫 正则表达式 java javascript
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
Kotlin D3
GH小杨
kotlin 开发语言 android
KotlinD3面向对象一、课程目标本次课程旨在让学员全面且深入地了解面向对象编程的核心概念,透彻掌握类与对象之间的紧密关系,熟练运用Kotlin语言中各类常用类进行程序开发。通过理论知识的系统讲解、丰富多样的实际案例分析以及详细的代码解读,帮助学员将面向对象编程思想融入到Kotlin编程实践中,提升解决实际问题的能力,为后续开发复杂的Kotlin应用程序奠定坚实基础。二、面向对象的概念2.1什么
性能测试详解(一)概述
小高写BUG
性能测试与分析 压力测试 前端 运维
文章目录性能测试详解(一)概述1.性能测试基础2.性能测试主要指标3.性能需求分析4.性能场景设计5.性能测试监控6.性能的分析与调优7.持续集成8.项目性能测试综合实战性能测试详解(一)概述1.性能测试基础结合实际应用对性能测试中所关联的所有性能理论知识进行详细讲解。性能测试的发展史性能测试的概念性能测试的分类性能测试的目的性能瓶颈的测试的测试方法性能测试的准入准出条件性能测试的流程为什么需要性
微博舆情分析:使用Python进行深度解析
傻啦嘿哟
关于python那些事儿 python 开发语言
目录一、准备工作二、基础理论知识三、步骤详解数据预处理情感分析关键词提取四、案例分享数据爬取数据分析五、优化六、结论在当今信息爆炸的时代,社交媒体平台如微博已成为公众表达意见和情感的重要渠道。微博舆情分析通过对大量微博数据进行挖掘和分析,可以揭示公众对某些事件或话题的态度和情绪。本文将详细介绍如何使用Python进行微博舆情分析,包括数据获取、预处理、情感分析、关键词提取和数据可视化等步骤,并附上
Mysql8主从复制(兼容低高版本)
热心市民运维小孙
adb android
Mysql主从复制理论知识主从复制必要前提主从复制必要的条件:主库开启binlog日志(设置log-bin参数)主从server-id不同从库服务器能连同主库实现原理原理:实现整个主从复制,需要由slave服务器上的IO进程和Sql进程共同完成;要实现主从复制,首先必须打开Master端的binarylog(bin-log)功能,因为整个MySQL复制过程实际上就是Slave从Master端获取相
3年常见面试题
Ulrica0
java-rabbitmq rabbitmq java
SHEIN希音一面1、简单大概自我介绍2、面试官根据您简历项目进行互动,所以可以好好复习关于财务系统(例如报销系统、财务系统、供应商订货财务等)一些理论知识点和项目、系统比较容易出现什么突发bug、如何修复等2、技术方面1)mysql中有一张表id自增name找出name重复的记录?selectemployee_name,count(*)ascfromemployeegroupbyemployee
如何高效准备PostgreSQL认证考试?
leegong23111
postgresql 数据库
高效准备PostgreSQL中级认证考试,可从知识储备、技能提升、模拟考试等方面入手,以下是具体建议:深入学习理论知识系统学习核心知识:依据考试大纲,对PostgreSQL的体系结构、数据类型、SQL语言、事务处理、存储过程、索引等核心知识进行系统学习。可以参考《PostgreSQL10HighPerformance》《ProPostgreSQL》等书籍,深入理解原理和概念。研究官方文档:Post
DeepSeek架构革命:动态异构计算
伏羲栈
人工智能 架构
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
【构建企业级Spring Boot应用:从基础到高级的全面指南】
小怪兽9699
spring boot 后端 java
摘要本文旨在为开发者提供一份详尽的指南,帮助大家深入理解并掌握如何使用SpringBoot框架来快速开发企业级应用程序。通过实际案例分析、代码示例以及架构设计思路分享,读者不仅能够学习到理论知识,还能获得宝贵的实践经验。本文将涵盖从环境搭建、项目创建、配置管理、数据访问层、Web服务开发、安全机制实现、日志记录、单元测试与集成测试,到最终的部署上线等各个方面。目录摘要目录引言SpringBoot简
Servlet理论知识详解
wertuiop_
servlet
文章目录前言一、网络架构1.1网络架构概述1.2B/S与C/S模式1.3Tomcat在网络架构中的角色二、Tomcat与云服务器的区别2.1Tomcat2.2云服务器2.3Tomcat与云服务器的结合三、Tomcat目录结构详解3.1bin目录3.2conf目录3.3lib目录3.4logs目录3.5webapps目录3.6work目录3.7temp目录四、Tomcat工作原理与目录结构的结合4.
CIDR转IP段:原理&Java实现
伏羲栈
Java tcp/ip java 网络协议
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
DeepSeek 提示词:常见指令类型
伏羲栈
人工智能 deepseek提示词 人工智能
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
解析Linux中的系统安全及应用(二)
石头城云计算笔记
Linux su命令切换用户 sudo机制提升权限 PAM安全认证 网络端口扫描 弱口令检测
各位小伙伴大家好,本次和大家分享的是Linux系统中的系统安全及应用的相关理论知识及操作。我将通过以下几点和相关的实验进行分析说明:(接上篇)五.使用su命令切换用户:1、用途及方法用途:SubstituteUser,切换用户格式:su-目标用户(bash环境)2、密码验证root→任意用户,不验证密码普通用户→其他用户,验证目标用户的密码[jerry@localhost~]$su-root(带-
Springboot 整合 Java DL4J 实现企业门禁人脸识别系统
伏羲栈
人工智能 深度学习 Java DL4J - 深度学习实战 spring boot java Deeplearning4j deep learning 人工智能 深度学习 spring
博主简介:历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于
java面试知识点总结-sql篇
weixin_42677025
面试 职场和发展 sql 数据库 后端 java
年底了,准备离职换工作了,在做面试准备时,发现自己的知识体系太零散,理论知识储备匮乏,之前也没有特别系统的去进行梳理,正好趁这次机会梳理一下知识体系,一方面为面试做准备,另一方面后续工作中设计到相关知识点时可以迅速定位到相关知识点,总结中会夹杂着面试问题或者知识点在工作中的实际应用。sql索引创建时,创建字段顺序对查询速度有影响吗?有关系,索引本身是一个排序的列表,存储这索引值和数据所在行的物理地
springboot中工厂+策略模式实际应用
BraveTT
策略模式 java 开发语言
之前只是在各种博客和书籍上看到设计模式使用的理论知识,今天在项目中,正好遇到了这种需求,于是想着用这俩种模式实战一下,没想到成功了,记录一下,也欢迎各位大兄弟们继续给出好的建议。需求:有一个列表的数据,数据里有状态一栏,但是不同角色看到的状态值不一样。原先处理方法:对于各种新手小伙伴来说,是不是要各种if判断角色code,然后在不同的if里,去修改状态的文本值?类似于这样:if(roleCodeC
DeepSeek 提示词:基础结构
伏羲栈
人工智能 deepseek 提示词 人工智能
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
不要再走弯路了2025最全的黑客入门学习路线在这
渗透代老师
学习 网络安全 安全 网络 web安全
基于入门网络安全/黑客打造的:黑客&网络安全入门&进阶学习资源包在大多数的思维里总觉得[学习]得先收集资料、学习编程、学习计算机基础,这样不是不可以,但是这样学效率太低了!你要知道网络安全是一门技术,任何技术的学习一定是以实践为主的。也就是说很多的理论知识其实是可以在实践中去验证拓展的,这样学习比起你啃原理、啃书本要好理解很多。所以想要学习网络安全选对正确的学习方法很重要,这可以帮你少走很多弯路。
二分查找排序算法
周凡杨
java 二分查找 排序 算法 折半
一:概念 二分查找又称
折半查找(
折半搜索/
二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步
java中的BigDecimal
bijian1013
java BigDecimal
在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。
原文地址:http://blog.csdn.net/ugg/article/de
Shell echo命令详解
daizj
echo shell
Shell echo命令
Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:
echo string
您可以使用echo实现更复杂的输出格式控制。 1.显示普通字符串:
echo "It is a test"
这里的双引号完全可以省略,以下命令与上面实例效果一致:
echo Itis a test 2.显示转义
Oracle DBA 简单操作
周凡杨
oracle dba sql
--执行次数多的SQL
select sql_text,executions from (
select sql_text,executions from v$sqlarea order by executions desc
) where rownum<81;
&nb
画图重绘
朱辉辉33
游戏
我第一次接触重绘是编写五子棋小游戏的时候,因为游戏里的棋盘是用线绘制的,而这些东西并不在系统自带的重绘里,所以在移动窗体时,棋盘并不会重绘出来。所以我们要重写系统的重绘方法。
在重写系统重绘方法时,我们要注意一定要调用父类的重绘方法,即加上super.paint(g),因为如果不调用父类的重绘方式,重写后会把父类的重绘覆盖掉,而父类的重绘方法是绘制画布,这样就导致我们
线程之初体验
西蜀石兰
线程
一直觉得多线程是学Java的一个分水岭,懂多线程才算入门。
之前看《编程思想》的多线程章节,看的云里雾里,知道线程类有哪几个方法,却依旧不知道线程到底是什么?书上都写线程是进程的模块,共享线程的资源,可是这跟多线程编程有毛线的关系,呜呜。。。
线程其实也是用户自定义的任务,不要过多的强调线程的属性,而忽略了线程最基本的属性。
你可以在线程类的run()方法中定义自己的任务,就跟正常的Ja
linux集群互相免登陆配置
林鹤霄
linux
配置ssh免登陆
1、生成秘钥和公钥 ssh-keygen -t rsa
2、提示让你输入,什么都不输,三次回车之后会在~下面的.ssh文件夹中多出两个文件id_rsa 和 id_rsa.pub
其中id_rsa为秘钥,id_rsa.pub为公钥,使用公钥加密的数据只有私钥才能对这些数据解密 c
mysql : Lock wait timeout exceeded; try restarting transaction
aigo
mysql
原文:http://www.cnblogs.com/freeliver54/archive/2010/09/30/1839042.html
原因是你使用的InnoDB 表类型的时候,
默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,
因为有的锁等待超过了这个时间,所以抱错.
你可以把这个时间加长,或者优化存储
Socket编程 基本的聊天实现。
alleni123
socket
public class Server
{
//用来存储所有连接上来的客户
private List<ServerThread> clients;
public static void main(String[] args)
{
Server s = new Server();
s.startServer(9988);
}
publi
多线程监听器事件模式(一个简单的例子)
百合不是茶
线程 监听模式
多线程的事件监听器模式
监听器时间模式经常与多线程使用,在多线程中如何知道我的线程正在执行那什么内容,可以通过时间监听器模式得到
创建多线程的事件监听器模式 思路:
1, 创建线程并启动,在创建线程的位置设置一个标记
2,创建队
spring InitializingBean接口
bijian1013
java spring
spring的事务的TransactionTemplate,其源码如下:
public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{
...
}
TransactionTemplate继承了DefaultT
Oracle中询表的权限被授予给了哪些用户
bijian1013
oracle 数据库 权限
Oracle查询表将权限赋给了哪些用户的SQL,以备查用。
select t.table_name as "表名",
t.grantee as "被授权的属组",
t.owner as "对象所在的属组"
【Struts2五】Struts2 参数传值
bit1129
struts2
Struts2中参数传值的3种情况
1.请求参数绑定到Action的实例字段上
2.Action将值传递到转发的视图上
3.Action将值传递到重定向的视图上
一、请求参数绑定到Action的实例字段上以及Action将值传递到转发的视图上
Struts可以自动将请求URL中的请求参数或者表单提交的参数绑定到Action定义的实例字段上,绑定的规则使用ognl表达式语言
【Kafka十四】关于auto.offset.reset[Q/A]
bit1129
kafka
I got serveral questions about auto.offset.reset. This configuration parameter governs how consumer read the message from Kafka when there is no initial offset in ZooKeeper or
nginx gzip压缩配置
ronin47
nginx gzip 压缩范例
nginx gzip压缩配置 更多
0
nginx
gzip
配置
随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢?
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用
java-13.输入一个单向链表,输出该链表中倒数第 k 个节点
bylijinnan
java
two cursors.
Make the first cursor go K steps first.
/*
* 第 13 题:题目:输入一个单向链表,输出该链表中倒数第 k 个节点
*/
public void displayKthItemsBackWard(ListNode head,int k){
ListNode p1=head,p2=head;
Spring源码学习-JdbcTemplate queryForObject
bylijinnan
java spring
JdbcTemplate中有两个可能会混淆的queryForObject方法:
1.
Object queryForObject(String sql, Object[] args, Class requiredType)
2.
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
第1个方法是只查
[冰川时代]在冰川时代,我们需要什么样的技术?
comsci
技术
看美国那边的气候情况....我有个感觉...是不是要进入小冰期了?
那么在小冰期里面...我们的户外活动肯定会出现很多问题...在室内呆着的情况会非常多...怎么在室内呆着而不发闷...怎么用最低的电力保证室内的温度.....这都需要技术手段...
&nb
js 获取浏览器型号
cuityang
js 浏览器
根据浏览器获取iphone和apk的下载地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" content="text/html"/>
<meta name=
C# socks5详解 转
dalan_123
socket C#
http://www.cnblogs.com/zhujiechang/archive/2008/10/21/1316308.html 这里主要讲的是用.NET实现基于Socket5下面的代理协议进行客户端的通讯,Socket4的实现是类似的,注意的事,这里不是讲用C#实现一个代理服务器,因为实现一个代理服务器需要实现很多协议,头大,而且现在市面上有很多现成的代理服务器用,性能又好,
运维 Centos问题汇总
dcj3sjt126com
云主机
一、sh 脚本不执行的原因
sh脚本不执行的原因 只有2个
1.权限不够
2.sh脚本里路径没写完整。
二、解决You have new mail in /var/spool/mail/root
修改/usr/share/logwatch/default.conf/logwatch.conf配置文件
MailTo =
MailFrom
三、查询连接数
Yii防注入攻击笔记
dcj3sjt126com
sql WEB安全 yii
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表:
http://blog.csdn.net/xinzhu1990/articl
MongoDB简介[一]
eksliang
mongodb MongoDB简介
MongoDB简介
转载请出自出处:http://eksliang.iteye.com/blog/2173288 1.1易于使用
MongoDB是一个面向文档的数据库,而不是关系型数据库。与关系型数据库相比,面向文档的数据库不再有行的概念,取而代之的是更为灵活的“文档”模型。
另外,不
zookeeper windows 入门安装和测试
greemranqq
zookeeper 安装 分布式
一、序言
以下是我对zookeeper 的一些理解: zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”。
栗子1号:
假设我是一家KTV的老板,我同时拥有5家KTV,我肯定得时刻监视
Spring之使用事务缘由(2-注解实现)
ihuning
spring
Spring事务注解实现
1. 依赖包:
1.1 spring包:
spring-beans-4.0.0.RELEASE.jar
spring-context-4.0.0.
iOS App Launch Option
啸笑天
option
iOS 程序启动时总会调用application:didFinishLaunchingWithOptions:,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。
launchOptions中的可能键值见UIApplication Class Reference的Launch Options Keys节 。
1、若用户直接
jdk与jre的区别(_)
macroli
java jvm jdk
简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JDK就是Java Development Kit JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。 如果安装了JDK,会发同你
Updates were rejected because the tip of your current branch is behind
qiaolevip
学习永无止境 每天进步一点点 众观千象 git
$ git push joe prod-2295-1
To git@git.dianrong.com:joe.le/dr-frontend.git
! [rejected] prod-2295-1 -> prod-2295-1 (non-fast-forward)
error: failed to push some refs to 'git@git.dianron
[一起学Hive]之十四-Hive的元数据表结构详解
superlxw1234
hive hive元数据结构
关键字:Hive元数据、Hive元数据表结构
之前在 “[一起学Hive]之一–Hive概述,Hive是什么”中介绍过,Hive自己维护了一套元数据,用户通过HQL查询时候,Hive首先需要结合元数据,将HQL翻译成MapReduce去执行。
本文介绍一下Hive元数据中重要的一些表结构及用途,以Hive0.13为例。
文章最后面,会以一个示例来全面了解一下,
Spring 3.2.14,4.1.7,4.2.RC2发布
wiselyman
Spring 3
Spring 3.2.14、4.1.7及4.2.RC2于6月30日发布。
其中Spring 3.2.1是一个维护版本(维护周期到2016-12-31截止),后续会继续根据需求和bug发布维护版本。此时,Spring官方强烈建议升级Spring框架至4.1.7 或者将要发布的4.2 。
其中Spring 4.1.7主要包含这些更新内容。