當自己應用訪問第三方API 不應該由前端來弄吧,基本都是由后端來處理。
跨域是瀏覽器的限制,小水管也只能這么用了
控制臺的是英文,不是天書。記得讀一讀
function async2() {
console.log( 'async2');
}
async function async1(resolve) {
await setTimeout(function () {
console.log("settimeout");
//當我認定async1完成后才開始async2
resolve()
},0);
}
new Promise(function (resolve) {
async1(resolve)
}).then(function () {
async2()
});
或者
new Promise(function (resolve) {
async1()
resolve()
}).then(function () {
async2()
});
其實這個問題,很簡單,分析一下就知道了。分析如下:
var str = "我是/@小王@\\和/@小李@\\的好朋友"
你要轉(zhuǎn)成
var arr = [{"text": "我是"}, {"name": 小王"}, {"text": "和"}, {"name": "小李"}, {"text": "的好朋友"}]
以我看來就是,通過/@和@\把字符串分割,并且以/@結尾的放到text屬性中,以@\結尾的放到name中,并且保持原有順序。
既然是有兩個分割字符,那么我們就分割兩次。我簡單寫了一下,但是沒有做太多檢驗和判斷?;仡^你對參數(shù)做下校驗。
我的代碼如下:
var str = "我是/@小王@\\和/@小李@\\的好朋友";
var strs = str.split("/@");
var arr = new Array();
for (var i = 0 ;i < strs.length;i++)
{
if(strs[i].indexOf('@\\') != -1)
{
var temps = strs[i].split('@\\');
for(var j=0;j<temps.length;j++)
{
if(j == temps.length -1)
{
var text =
{
text:temps[j]
}
}else
{
var name =
{
name:temps[j]
}
}
}
}else
{
var text =
{
text:strs[i]
}
}
if(name != null && '' != name && 'undifined' != name)
{
arr.push(name);
}
if(text != null && '' != text && 'undifined' != text)
{
arr.push(text);
}
}
console.log(arr);
那么,最后控制臺輸入如下:
如果沒問題,請采納,謝謝。
正好在項目中有用到,在這分享一個。
右邊是不是加了overflow:hidden
pool.getConnection
跟connection.query
如果沒有promise/async寫法的話,你就手動實現(xiàn)各promise吧。
function search(searchtext) {
return new Promise((resolve, reject) => {
var resdata = {};
if (safetytest(searchtext)) {
pool.getConnection(function (err, connection) {
if (err) reject(err); // reject
connection.query(
function (err, result) {
if (err) reject(err); // reject
resdata = {
};
resolve(resdata); // resolve
}
);
});
}
})
}
有的話可能就是這樣了。
async function search(searchtext) {
var resdata = {};
// 安全檢查
if (safetytest(searchtext)) {
try {
const connection = await pool.getConnection()
const resdata = await connection.query()
return resdata
} catch (err) {
throw err
}
}
}
原生,不喜歡中間在第一層,體驗很好的
現(xiàn)在用mpvue
的比較多,這是因為vue
是前端必須會的,技術比較熟悉,直接用來開發(fā)了,
cpu 和 goroutine 默認情況下并不是 1:1 的關系,對各個 goroutine 的調(diào)度是 go runtime 的調(diào)度器決定的
感謝這位大神,寫的都很清楚了,http://blog.csdn.net/xu122723...。
問題的主要原因是,雖然tomcat已經(jīng)攔截了404,并指向了我的index頁面,但是這個404的標記還是存在,只要遇見存在404錯誤頁處理的平臺,就gg了。就比如微信平臺,他檢測到你的404,就立馬跳向公益404頁面了。
解決方法一:后臺設置攔截器,在發(fā)送任何請求前,后臺都做攔截,并指向index頁面。
解決方法二:用nginx進行攔截,修改nginx.conf文件
http {
# 此處省略好多字
server {
# nginx才配使用80端口,其他服務速速離去
listen 80;
# 沒啥好解釋的
server_name localhost;
# 指定根目錄,由于我的前端項目是直接放在nginx下的html文件夾,所以我這樣配
root html;
# 這里其實是由if變過來的,意思是如果uri存在,那就訪問uri的資源,如果uri不存在,那就訪問該目錄下index.html文件。如果看不懂我的解釋,可以看這個https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/#front-controller-pattern-web-apps
try_files $uri $uri/ /index.html;
# 這里是配你Tomcat里面的其他java項目,意思是當你訪問http://ip/xxx的時候,會到這個代碼塊里面進行對應操作
location /xxx {
# 這些照著加就好了,無非是獲取服務器host/ip相關,一定要加,否則如果你的項目并不是前后端分離,而是SSH/SSM帶有jsp或者模板頁面的,那就會出現(xiàn)找不到css/js等找不到一切靜態(tài)資源文件的錯誤。為什么會報錯,因為你看network面板你就知道,他是去訪問http://127.0.0.1/xxx/css...而并不是訪問服務器的真實ip,所以還是乖乖加上吧!
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 去該地址去找項目資源
proxy_pass http://127.0.0.1:8080/xxx;
}
}
}
echarts圖標。。。
意思是數(shù)據(jù)是寫死在代碼里的么?
試試setOption異步執(zhí)行吧。
如果是走請求獲得的數(shù)據(jù)。那就比較奇怪了,因為本身就是異步的。
html
<form>
<input type="text" value="">
<input type="text" value="">
<input type="text" value="">
<input type="text" value="">
<input type="text" value="">
<input type="button" value="提交">
</form>
js//主要是用了 ES5 的 every 方法,都滿足條件返回 true,否則返回 false
$(document).ready(function() {
$("input[type=button]").click(function(e) {
let isAllEmpty = $("input[type=text]").toArray().every(function(input) {
return input.value === '';
});
if (isAllEmpty) {
alert('都為空');
}
});
});
/apps\/App.+\/(a.js|b.js)/
如果構造函數(shù)返回了一個“對象”,那么這個對象會取代整個new出來的結果。
var aa = new a(name);
也就是說 aa 就是{say1:say}這個對象了,他是不具有say2的!
對Struts 不熟悉
Cannot use wildcard in Access-Control-Allow-Origin when credentials flag is true
想要用cookie,跨域權限就不能這么設置(即設置為*)。必須要設置相應的協(xié)議+域名+端口
都catch(e)了,可以console.error(e)出來看看。
var reg = /cat/gi
var str = var str = "我是cat,CA"
// 連續(xù)執(zhí)行三遍看看結果
console.log(reg.exec(newStr))
console.log(reg.exec(newStr))
console.log(reg.exec(newStr))
// 第二次的時候輸出null,恰好在你的邏輯里,取[0]時正是第二遍,所以報錯跳出。
app.mockSession({
foo: 'bar'
});
const ctx = app.mockContext();
console.log(ctx.session.foo);
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術與教育服務機構,發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
浪潮集團項目經(jīng)理。精通Java與.NET 技術, 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務負責iOS教學及管理工作。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。