計(jì)算中的數(shù)值過大,導(dǎo)致了數(shù)值類型溢出,普通遞歸的方式重復(fù)進(jìn)行大數(shù)計(jì)算,存在溢出導(dǎo)致精度損失的步驟多了就和 方法1 有了差異,計(jì)算有誤差的是 方法2
1.通過地址欄參數(shù)傳遞
2.通過localstorage,sessionStorage等技術(shù)
跳轉(zhuǎn)前記得攜帶參數(shù)就行了
//https://mail.qq.com/cgi-bin/frame_html?sid=EJs87usyg4jSZy51&t=newwin_frame&url=%2fcgi-bin%2freadmail%3fmailid%3dZC1927-zkXnZWC5bWY8MnsgobyyP87%26need_textcontent%3dtrue%26s%3dnotify%26newwin%3Dtrue%26t%3dreadmail&r=9f2c2de4f4d1a5acaa0109db8fadf7cd
function getQueryString(name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2]);
}
return null;
}
getQueryString('sid')
"EJs87usyg4jSZy51"
<template>
<div>
<MyComponent :icon=compomentIcon></MyComponent>
</div>
</template>
<script>
import MyComponent from 'path'
import componentImg from 'imgpath'
export default {
data(){
return {
compomentIcon: componentImg
}
},
components: {
MyComponent
}
}
</script>
這個(gè)和服務(wù)器渲染 有什么關(guān)系? 不是服務(wù)器渲染 好像也有跳動(dòng)吧?
個(gè)人見解, 可能有誤
首先, 本人項(xiàng)目經(jīng)驗(yàn)幾乎為零, 但是做過 一個(gè)服務(wù)端渲染 移動(dòng)站。
vue ssr.
和react 服務(wù)器渲染原理應(yīng)該是相同的,同時(shí)本人也看過 next, 懂點(diǎn) react.
廢話不多說。
服務(wù)器渲染, 簡(jiǎn)單來(lái)說其實(shí),就是 node 只是把相應(yīng)的路由對(duì)于的路由組件,渲染成 虛擬dom(js對(duì)象而已兩端都支持), 然后通過服務(wù)端特有api 把虛擬dom 轉(zhuǎn)化為 html 字符串而已 A(節(jié)點(diǎn)),然后返回 到瀏覽器。
其實(shí) 和jade 差不多。
瀏覽器渲染, 只不過 是 A(節(jié)點(diǎn))轉(zhuǎn)化為 真實(shí)的dom插入 <div id="app"></div> 而已。
同時(shí)本人也用過 flexable.js 淘寶首屏前端適配 和你 說的 那個(gè) js 差不多。
適配js 是 在瀏覽器端 做的處理, 和 服務(wù)器端 沒有關(guān)系。
造成頁(yè)面抖動(dòng)的原因:
我猜測(cè)可能:
1.瀏覽器是解析邊渲染dom, 瀏覽器有默認(rèn)根字體大小, 然后后來(lái)js又根據(jù)屏幕尺寸,設(shè)置跟字體大小。
2.
我曾做過測(cè)試,頁(yè)面沒渲染完的某一刻獲取手機(jī)端的屏幕尺寸和真實(shí)尺寸不一致。真?zhèn)€頁(yè)面解析完 后尺寸一致。
我用的是 window.innerWith
之前項(xiàng)目中用到的,你可以參考一下:
function generateDateAxis(config) {
// 合并參數(shù)
let p = Object.assign({
// 類型
type: '年',
// 方向
direction: 'prev',
// 模板
source: '',
target: 'YYYYMMDD',
// 開始
start: moment(),
// 時(shí)間軸長(zhǎng)度,默認(rèn)2個(gè)
length: 2,
// 處理時(shí)間軸單個(gè)時(shí)間的方法
forEach: function (item, idx, axis) {
return item;
},
// 停止添加時(shí)間軸元素的方法
stop: function (item, idx, axis) {
return false;
},
// 升序 ascend(asc) || 降序 descend(desc)
sort: 'asc'
}, config);
// 時(shí)間類型映射表
const DATE_TYPE_MAP = {
'year|年': 'years',
'month|月': 'months',
'week|周|星期': 'weeks',
'day|日|天': 'days',
};
// 類型
let type = '', tstr, treg;
// 根據(jù)參數(shù)type獲取moment需要加減的單位(年|月|星期|日)
for (tstr in DATE_TYPE_MAP) {
treg = new RegExp(tstr);
if (treg.test(p.type)) {
type = DATE_TYPE_MAP[tstr];
break;
}
}
let direction = p.direction === 'prev' ? 'subtract' : 'add', // 減 || 加
Sattern = p.source || p.target, // 源模板
Tpattern = p.target, // 目標(biāo)模板
start = p.start, // 開始時(shí)間
sort = p.sort === 'asc' ? 'unshift' : 'push', // 排序
unit, // 時(shí)間軸單個(gè)元素
idx = 0, // 時(shí)間軸下標(biāo)
newStart;
// 循環(huán)獲取單個(gè)時(shí)間,并通過forEach方法處理,然后放入result數(shù)組返回
let axis = (function loop(l, r) {
newStart = moment(start, Sattern)[direction](idx, type).format(Tpattern);
// 處理生成的時(shí)間軸元素
unit = p.forEach(newStart, idx, r);
// 處理后的元素合法則放進(jìn)結(jié)果數(shù)組
r[sort](unit);
if (r.length === l || p.stop(unit, idx, r)) {
return r;
}
idx++;
return loop(l, r);
})(p.length, []);
return axis;
}
> 用法:
let result = generateDateAxis({
// 類型
type: '月',
// 方向
direction: 'prev',
// 模板
source: 'YYYYMM',
target: 'YYYY-MM',
// 開始
start: moment(),
// 時(shí)間軸長(zhǎng)度,默認(rèn)2個(gè)
length: 10,
// 處理時(shí)間軸單個(gè)時(shí)間的方法
forEach: function (item, idx, axis) {
return item;
},
// 停止添加時(shí)間軸元素的方法
stop: function (item, idx, axis) {
return false;
},
// 升序 ascend(asc) || 降序 descend(desc)
sort: 'asc'
});
console.log(result);set已經(jīng)是函數(shù)了,函數(shù)本身也是有原型鏈的
出了IDE的設(shè)置,還要確定spring的包在不在class path里,如果是Maven項(xiàng)目或者gradle項(xiàng)目,有沒有添加spring的依賴
不是不可以,但不要這么做。
你可以把每個(gè)頁(yè)面當(dāng)成獨(dú)立的應(yīng)用(多頁(yè)應(yīng)用)。也可以把整個(gè)系統(tǒng)看成一個(gè)應(yīng)用,頁(yè)面為子模塊(單頁(yè)應(yīng)用)。
都弄一起這坑就沒法填,甚至路由到哪都不知道。
目前看到有:
:key 指定錯(cuò)了應(yīng)該會(huì)導(dǎo)致此異常 ?
<div v-for="(value,index) in starUnits" :key="index">
<p class="personne">{{value}}</p>
<div v-if="value.boolean"></div>
</div>
不應(yīng)該 :key="index" 應(yīng)該寫 :key="value" 因?yàn)橄挛挠?code><p class="personne">{{value.title}}</p>的一些引用。
你用的是1.0嗎?2.0應(yīng)該報(bào)錯(cuò)信息更加豐富
var arr = str.replace(//>/g,"/>,").split(",")
用正則匹配/>,然后替換即可
url你寫成 uri了
問題已解決,對(duì)其他人沒有幫助。
先解釋一個(gè)問題:\1 等于 () 中匹配的內(nèi)容。
問題1,不管w+部分是幾位值,只要1的內(nèi)容和w+部分是值相同就符合條件;我的推論想法對(duì)嗎?
少了括號(hào), 不論(\w+)中有幾位。
問題2:根據(jù)上面的推論這里實(shí)際上取值成功且為aba;改變str2=“aabaacd”這樣取值為aabaa,但為什么不是輸出aabaa,aba呢?
str2 = "aabacd" 時(shí), /(w+)b1/g 匹配 aba。
但是當(dāng) str2 = "aabaacd" 時(shí), /(w+)b1/g 就只匹配 aabaa 了,不會(huì)再重復(fù)匹配 aba。 這是約定,沒有為什么。
str2 = "aaabaaacd" 時(shí),只匹配 aaabaaa。
問題3:/(w+)1/g和/(w)+1/g及/w1+/g的區(qū)別?
這三個(gè)例子不好解釋,我們把 b 加上。我們來(lái)解釋 /(\w+)b\1/g 和 /(\w)+b\1/g 的區(qū)別。
區(qū)別主要是 \1 的值,因?yàn)?\1 等于括號(hào)()中的值。最開始的地方寫了。
"aabaac".replace(/(\w+)b\1/g, function(value1, value2) {
// value1="aabaa" 因?yàn)?\1 = "aa"
})
"aabaac".replace(/(\w)+b\1/g, function(value1, value2) {
// value1="aaba" 因?yàn)?\1 = "a"
})
至于 /w1/g 因?yàn)闆]有括號(hào)(),所以 1 沒有值。
"aabaac".replace(/(\wb\1/g, function(value1, value2) {
// value1 沒有值
})angular由于變動(dòng)比較快,以及一些歷史原因,我沒有深入使用,贊不評(píng)論。
而且目前的框架選擇也基本上是從兩大框架(react和vue)中選擇的
我來(lái)幫你分析一下吧。
首先確定要不要使用框架。
項(xiàng)目的復(fù)雜度和框架復(fù)雜度應(yīng)該成正比, 因此首先要評(píng)估有沒有引入復(fù)雜框架的必要,
然而大多數(shù)情況是有必要的,但也不一定。
然后明確項(xiàng)目的目前的復(fù)雜度和將來(lái)(近幾個(gè)月或者一年半年)的復(fù)雜度情況。
vuejs和react都有著自己的特點(diǎn)。vue是一個(gè)響應(yīng)式的用于構(gòu)建UI的庫(kù),而react
則是聲明式函數(shù)式的UI庫(kù)。兩者的原路定位都不太一樣。
簡(jiǎn)單來(lái)說,vue更加”自動(dòng)化,智能“一點(diǎn), react”更加自由,可控性更強(qiáng)“,react更純粹,可控性強(qiáng)。
最后還要明確當(dāng)前人員的技術(shù)棧情況,如果團(tuán)隊(duì)還沒有組建,也要考慮招人的情況。
就我個(gè)人經(jīng)驗(yàn)來(lái)看, 精通react的會(huì)更少一點(diǎn)。相反懂一點(diǎn)vuejs的人會(huì)更多一點(diǎn)。
img本身沒有焦點(diǎn),要想獲得焦點(diǎn)請(qǐng)?jiān)趇mg標(biāo)簽里加上tabindex屬性,讓其能夠接受輸入焦點(diǎn),但是還是推薦用點(diǎn)擊事件來(lái)添加active
.active{
border:1px solid red;
}
<div class="box">
<ul >
<li><img src="img/451e0f1.png"/></li>
<li><img src="img/4caa0aa.png"></li>
<li><img src="img/123.jpg"></li>
<li><img src="img/2e0f7f7.png"/></li>
</ul>
</div>
var imgs = document.querySelectorAll(".box img");
imgs.forEach(function(el){
el.onclick=function(){
imgs.forEach(function(el2){
if(el.isEqualNode(el2)){
if(this.classList.contains('active')){
this.classList.remove('active');
}else{
this.classList.add('active');
}
}else{
el2.classList.remove('active');
}
}.bind(this));
}
});
用focus的話
<div class="box">
<ul class="ul1">
<li><img src="img/451e0f1.png" tabIndex="1"/></li>
<li><img src="img/4caa0aa.png" tabIndex="1"></li>
<li><img src="img/123.jpg" tabIndex="1"></li>
<li><img src="img/2e0f7f7.png" tabIndex="1"/></li>
</ul>
</div>
var imgs = document.querySelectorAll(".box img");
imgs.forEach(function(el){
el.onfocus=function(){
imgs.forEach(function(el2){
if(el.isEqualNode(el2)){
if(this.classList.contains('active')){
this.classList.remove('active');
}else{
this.classList.add('active');
}
}else{
el2.classList.remove('active');
}
}.bind(this));
}
});request和response是http生命周期中的東西,相當(dāng)于輸入輸出,你可以這樣的思維去應(yīng)用,將php輸入變量到request,如常見的超全局變量_GET,_POST,_SERVER。
動(dòng)態(tài)創(chuàng)建?
var img = new Image();
img.src = url;
var start = +new Date();
img.onload = function() {
if ( +new Date() - start > 10){
console.log('time out')
}else {
//append
}
}北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
北大課工場(chǎng)是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國(guó)家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國(guó)制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國(guó)職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫(kù),具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁(yè)制作和網(wǎng)頁(yè)游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問,美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。