在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(理论知识))
go理论知识记录(入门)
小猫猫猫◍˃ᵕ˂◍
golang c++ 算法
go理论知识记录(入门)ps:来源于刘丹冰老师的课程Go语言中的变量定义1.使用var关键字定义变量语法:var变量名类型=值如果未初始化,变量会被赋予其类型的零值:varscoreint//默认值为0varisPassbool//默认值为falsevargreetingstring//默认值为""2.类型推断(省略类型)Go支持类型推断,可以根据初始值自动推断变量类型。语法:var变量名=值3.
【Elasticsearch 】自定义分词器
程风破~
Elasticsearch elasticsearch 大数据 搜索引擎
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
Oracle OCP证书,含金量到底有多高!
HCIE考证研究所
oracle 开闭原则 数据库 网络工程师 OCP Oracle认证 华为认证
很多小伙伴来了解OracleOCP证书,那本期就给大家详细讲解下,什么是Oracle?什么是OCP?01什么是Oracle认证?Oracle认证是由Oracle公司颁布并实施的一项权威认证,旨在满足对Oracle核心技术人才的需求。这项认证证明了个人在操作能力和广泛理论知识方面的专业水平。Oracle认证专为那些具备相关技能和知识的专业人士设计,以确保他们能够胜任使用、管理和支持Oracle产品的
华为2024校招AI芯片开发工程师面试题详解
AI天才研究院
ChatGPT AI大模型企业级应用开发实战 大数据AI人工智能 大厂Offer收割机 面试题 简历 程序员读书 硅基计算 碳基计算 认知计算 生物计算 深度学习 神经网络 大数据 AIGC AGI LLM Java Python 架构设计 Agent 程序员实现财富自由
引言核心关键词华为2024校招AI芯片开发工程师面试题详解摘要本文旨在详细解析华为2024校招AI芯片开发工程师的面试题,通过系统的分析,帮助读者深入了解AI芯片的基础知识、设计原理以及面试策略。文章将分为七个主要部分,从AI芯片的概述到面试经验分享,再到行业动态和未来展望,全面覆盖AI芯片开发的核心内容。通过实际案例分析,本文还将展示如何将理论知识应用于实际项目中,为读者提供宝贵的开发实践经验和
java程序设计论文_【程序设计论文】Java程序设计教学思考(共3469字)
缘尽天野
java程序设计论文
摘要:为提高Java程序设计的教学质量,高校应深入研究课程的教学规律。通过分析Java程序设计现状及整改措施,阐述Java程序设计的教学内容,革新传统的教学模式,确保教育质量的考核指标,以供参考。关键词:Java程序设计;教学现状;整改措施;教学内容;研究Java程序设计,不仅有助于学生全面掌握Java程序设计的理论知识和专业技能,还有助于培养学生解决实际问题的能力。但从目前来看,Java程序设计
如何设计一个合理的vue前端项目架构
叫我阿柒啊
vue.js 前端 架构
在前端开发中,我学习的是vue的开发路线。在最初的学习中,除了学习理论知识,还有就是看一些开源项目学习如何将vue应用到实际开发中。合理的项目架构设计是项目成功的基础之一。一个好的架构不仅可以提升代码的可读性和可维护性,还能提高开发效率,并降低项目的长期维护成本。所以,本文将以构建项目为起点,探讨如何设计关于vue的前端架构。1.项目初始化1.1创建项目vue不是在IDE中创建项目,而是使用工具在
笔记(二)——vector容器基础理论知识
眉挑烟火
C++STL学习笔记 c++ STL C
vector容器优点:可以随机存取元素。可以在尾部高效添加和移除元素。一、vector容器的对象构造方法vector采用模板类实现默认构造例如vectorvecT;#include#includeusingnamespacestd;intmain(){intarr[]={0,1,2,3,4};vectorvecInt;//建立一个存放int的vector容器vectorvecFloat;//建立一
信息系统项目管理师考试概述与备考策略
Evaporator Core
系统架构设计师 软考信息系统项目管理师基础班 信息系统项目管理师提高班 系统架构 性能优化
引言信息系统项目管理师(以下简称“软考高项”)是中国计算机技术与软件专业技术资格(水平)考试中的高级资格认证之一。该认证旨在评估考生在信息系统项目管理领域的理论知识和实践能力,涵盖项目管理的各个方面,包括项目启动、规划、执行、监控和收尾等。通过软考高项的认证,不仅能够提升个人职业竞争力,还能为企业提供高质量的项目管理人才。本文将系统介绍软考高项考试的基本情况、考试内容、备考策略以及学习方法,帮助考
自动控制原理实验:解锁典型环节时域响应的奥秘
戒了9
人工智能 网络 算法 课程设计
实验背景与目的在自动控制原理的学习旅程中,实验环节犹如一把钥匙,为我们打开了通往深入理解和实际应用的大门。它不仅仅是理论知识的简单验证,更是将抽象概念转化为实际认知的关键桥梁。通过实验,我们能够在实践中探索自动控制的奥秘,将书本上的公式和原理与真实的系统行为联系起来,从而深化对知识的理解,提升解决实际问题的能力。本次实验聚焦于典型环节的时域响应,这是自动控制领域中至关重要的研究内容。典型环节作为构
函数计算 FC 诚邀您参加【Cloud Up 挑战赛】赢取丰厚奖品!
github
亲爱的开发者们,函数计算FC团队向你们发出诚挚邀请,加入我们即将举办的【CloudUp挑战赛】,这不仅是一场技术盛宴,更是一次展示才华与创新的机会。从互联网应用开发到AI、大数据,再到现代化应用开发,本次赛事覆盖了所有你渴望掌握的技能点,旨在为你提供一个实践平台,将理论知识转化为解决实际业务问题的能力。挑战赛为期三周,活动时间为2024年11月25日至12月13日,立即参与:https://dev
深入Java编程:经典课程设计案例剖析
脑叔
本文还有配套的精品资源,点击获取简介:Java课程设计是提高编程技能的重要途径,包含了Java基础语法、面向对象编程、异常处理、集合框架、IO流、多线程、网络编程、数据库连接、GUI编程、设计模式以及单元测试等多个方面。本集合详细介绍了这些关键知识点,并通过经典案例教学,帮助学生和开发者巩固理论知识,提升解决实际问题的能力,为未来的软件开发工作奠定坚实基础。1.Java基础语法精讲1.1Java程
SOME/IP服务接口
辣椒卷二王
网络协议 网络 someip 车载中间件
本系列文章将分享我在学习SOME/IP过程中积累的一些感悟,并结合SOME/IP的理论知识进行讲解。主要内容是对相关知识的梳理,并结合实际代码展示SOME/IP的使用,旨在自我复习并与大家交流。文中引用了一些例图,但由于未能找到原作者信息,若存在侵权问题,请联系删除。什么是Some/IP在前面的博客中我们介绍了SOA,英文翻译过来是面向服务。SOME/IP(Scalableservice-Orie
数字水印算法分类以及区别(含有变换域python代码链接)
Nefelibat
数字水印 数字水印 变换域
目录看代码前需要知道的理论知识使用场景分类水印算法运行名词解释历史信息的两个丢失其他抗打印水印数字水印技术变换域算法。去github上下载了一个用python写的源码:https://codeload.github.com/Messi-Q/python-watermark/zip/master然后自己跑了一下,该代码包括两个部分。一个是图像数字水印代码实现,一个是PDF数字水印代码实现。看代码前需
Oracle 19c OCP专家认证培训
云贝教育。
oracle 开闭原则 数据库
课程介绍Oracle认证专家(OCP)是Oracle认证专家(OCP),这是由Oracle公司发布并实施的权威技术标准,适用于有资格为Oracle核心产品提供服务和支持,并且具有经过验证的操作技能和广泛经验的认证专业人员。理论知识。通过OCPInternational认证,您具有管理大型Oracle数据库的技术能力。有资格成为大型企业的核心数据库系统工程师,掌握大型Oracle的备份,高级配置,优
【Elasticsearch 】 聚合分析:聚合概述
程风破~
Elasticsearch elasticsearch 大数据 搜索引擎
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
华为ENSP:STP和链路聚合的管理与配置
Lethehong
华为ensp 华为 网络
这里将不再过度阐述STP和链路聚合的理论知识,不清楚的同学可以去观看Cisco文章中的理论知识理论知识https://blog.csdn.net/2301_76341691/article/details/145166547?fromshare=blogdetail&sharetype=blogdetail&sharerId=145166547&sharerefer=PC&sharesource=
ChatGPT4.0最新功能和使用技巧,助力日常生活、学习与工作!
WangYan2022
教程 人工智能 chatgpt 数据分析 ai绘画 AI写作
熟练掌握ChatGPT4.0在数据分析、自动生成代码等方面的强大功能,系统学习人工智能(包括传统机器学习、深度学习等)的基础理论知识,以及具体的代码实现方法,同时掌握ChatGPT4.0在科研工作中的各种使用方法与技巧,以及人工智能领域经典机器学习算法(BP神经网络、支持向量机、决策树、随机森林、变量降维与特征选择、群优化算法等)和热门深度学习方法(卷积神经网络、迁移学习、RNN与LSTM神经网络
OSPF(2):基础配置、拓展配置
小度爱学习
网络安全从小白到大神 网络
引言在前面的学习中我们知道了ospf的基础理论知识:ospf(1),那么这一节我们就来继续学习ospf的配置吧,而在本节我们的学习将基于以下这张图来讲解配置命令:R1、R2、R3都有一个环回接口,分别为1.1.1.1、2.2.2.2、3.3.3.3,每个物理接口的IP地址如图。由于在前面几篇内容中我们已经详细的介绍过如何配置IP地址了,所以本篇内容不再做详细展示,不会的同学可以点击参考之前的博客:
WRF模式与Python融合技术及精美绘图
岁月如歌,青春不败
气象学 python 开发语言 wrf 气象科学 大气科学 气象学
一:WRF基础与Linux基础1WRF基础与Linux基础1.1WRF模式的理论知识与应用前景WRF动力理论WRF模式代码框架WRF模式应用前景1.2Linux知识与基本操作Linux基本命令设置定时任务超算提交任务1.3WRF模式安装基础库安装(GNU编译器、zlib、libpng、jasper、hdf5、netcdf4、mpich2)WRF/WPS安装二:WRF模式运行2WRF模式运行2.1W
鸿蒙NEXT应用开发训练营毕业总结
wjl6259
harmonyos 华为
自从加入鸿蒙NEXT应用开发训练营以来,我体验了一段充实而富有挑战性的学习旅程。通过系统的理论学习和实践操作,我不仅对鸿蒙NEXT应用开发有了深入的理解,还掌握了其核心技能。学习心得在理论知识学习方面,我深入了解了鸿蒙NEXT应用开发的基础概念、框架以及关键技术点。其分布式理念、跨设备协同能力以及安全性与稳定性的保障,都给我留下了深刻的印象。在实际案例中,我体会到了鸿蒙NEXT应用开发的强大功能和
【Elasticsearch】节点与集群:架构原理与优化实践
程风破~
Elasticsearch Elasticsearch实战 elasticsearch 架构 大数据
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
2022-05-22光印随思60学习要与现实打通
无名之米8
20220522光印随思60学习要与现实打通今天在匆忙中完成了新网师课程的第七次预习作业。每次完成预习作业的过程都是一次艰难的学习,先要学习相关的文本和文件,了解作业需要的理论知识,之后需要把理论知识运用于实际工作和生活中。这也是学习的真正价值所在。在很多时候,会有这样的感觉,读了很多书为什么没有啥长进?现在回想应该就是,当只有阅读和感受,没有把阅读心得转化为文字,没有把阅读的知识运用到实际的场景
2020.5.20【第三十八天打卡】
CY的好运很哇塞呦
2020.5.20【第三十八天打卡】:一、今日进度:1.会计直播课程:《经济法基础》两个小时,主要内容:经济法基础相关理论知识~纯理论的课程,加上心里的烦躁,完整地听完一节课,真的是太难为自己了,需要明天重新看一遍回放。2.读其他书7章。二、今日待进步:1.练字0%2.表格学习0%3.TED0%三、明日安排:(一)每日常规三件事:1.读书半小时2.练字半小时3.学习半小时(二)每日新增一事(兴趣工
SpringBoot整合ES搜索引擎 实现网站热搜词及热度计算
码踏云端
springboot Elasticsearch spring boot elasticsearch 后端 热搜词 热度计算 java
博主简介:历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于
今日读书所得 - 草稿
天下果盒1234
从今天起,开始读冯友兰先生的《中国哲学简史》,意在开拓眼界,培养自己严重欠缺的理性思维。这是一本重在讲理论知识的书籍,需要静心细读,我拿出了上学时读政治课本的劲头与方法去读它,先浏览,然后将勾画的内容出声音读一遍,最后讲自己认为最精髓的句子抄到笔记本上。这样读的后果是今天我只读了十页,不过收获还是有的,特整理一下:1.哲学家就是对于人生反思地思想并且能系统地表达他的思想。2.道家是哲学,教人顺乎自
心理咨询师的工作要求,北京心理咨询师招聘兼职
配音新手圈
一、心理咨询师的工作要求心理咨询师的工作要求主要包括以下几个方面:兼职副业推荐公众号,配音新手圈,声优配音圈,新配音兼职圈,配音就业圈,鼎音副业,有声新手圈,每天更新各种远程工作与在线兼职,职位包括:写手、程序开发、剪辑、设计、翻译、配音、无门槛、插画、翻译、等等。。。每日更新兼职。1.心理学或相关专业的学士学位,具备扎实的心理学理论知识。2.心理咨询技巧和沟通能力,能够有效地与客户进行沟通和交流
vllm在线推理踩坑记
懂点投资的码农
大语言模型 ai 语言模型 python
最近在《AI大模型全栈工程师》课程里看老师推荐使用vllm部署大模型,优点就不详细介绍了,这里摘抄一段来自于Qwen2上手指南对于它的简单介绍:它易于使用,且具有最先进的服务吞吐量、高效的注意力键值内存管理(通过PagedAttention实现)、连续批处理输入请求、优化的CUDA内核等功能。至于原理就先不看了,直接上手部署,以后再来补理论知识。一、vLLM在线推理在Qwen2的上市指南里介绍了v
学习之性能的理论知识一
蓝瑟柳絮
学习
一、性能的测试的概念1、什么是性能性能:就是软件质量属性中的效率效率特性:时间特性:表示系统处理用户请求的响应时间资源特性:表示系统运行过程中,系统资源的消耗情况:CPU,内存、磁盘2、什么是性能测试性能测试概念:使用自动化工具,模拟不同的场景,对软件各项性能指标进行测试和评估的过程测试的是:1、后台处理程序的性能(代码性能)2、应用服务、数据库、架构设计等是否存在瓶颈3、服务器资源消耗(cpu、
软考-系统架构设计师
金融行业程序员
软考-系统架构设计师 职场和发展
难度系统架构设计师考试是难度比较高的考试,涉及的计算机知识点广,除了理论知识,同时要求考试具备实践经验。如果基础比较差的考生也可以选择难度低一点的中级资格软件设计师先考。然后再考高级资格的系统架构设计师。重要程度和意义系统架构设计师难度比较大,那么相应的含金量肯定也比较高。通过高级资格系统架构设计师考试后:评职称(以考代评)高级工程师/副教授中日韩互相认可北上广深积分落户一线城市评定高级人才,例如
绘本讲师训练营【48期】1/21阅读原创《学习总结》
优丫漫绘本馆丹丹
48005王亚丹——2019年11月中旬第一次听到有绘本讲师培训班的时候就依然决定报名,于是就有了2020年1月1日的相遇。3天的时间又长又很短,长的是身体不佳,短的是学习时间太短。第一日上午首先是幽默的班班组织大家自我介绍。其次帅气智慧的阿渡老师从《如何阅读图画书》开始给我们分享了绘本基础理论知识:由最早的绘本到图画书进入大陆的历程;如何读绘本;如何选绘本;如何创作绘本剧及设计绘本活动、延伸等。
二分查找排序算法
周凡杨
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主要包含这些更新内容。