那就再建一個(gè)cofig文件夾(就當(dāng)做瀏覽器端工具類和數(shù)據(jù)字典用),當(dāng)做配置文件來寫,里面還能新建個(gè)放公共函數(shù)的js,同樣import引入,我的項(xiàng)目是這樣寫的,plugins只放插件,static只放靜態(tài)文件,css,font,部分image和ueditor之類的文件。
Object.assign在這里完全等價(jià)于e.returnValue = returnValue。
寫成這個(gè)樣子,要么是為了炫技,要么是為了讓接手的人看不懂
returnValue就是為了兼容性
window.onbeforeunload = function (e) {
e = e || window.event;
// 兼容IE8和Firefox 4之前的版本
if (e) {
e.returnValue = '關(guān)閉提示';
}
// Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+
return '關(guān)閉提示';
};
https://developer.mozilla.org...
然而真的為了兼容性的話才不會(huì)用Object.assign
好像就這樣的吧,你看官網(wǎng)的demo也這樣
mouseover 顯示吧
jq框架可以試試$(dom).attr(),原生js中也有dom.getAttribute();
如果是延時(shí)加載,不妨可以試試node模擬加載;或者延時(shí)加載思路
$arr = [
[
"attr_id": "11",
"attr_price": "29.8",
"attr_value": "藍(lán)色",
"goods_attr_id": "31",
"goods_id": "10"
],
[
"attr_id": "8",
"attr_price": "29.8",
"attr_value": "60CM",
"goods_attr_id": "29",
"goods_id": "10"
],
[
"attr_id": "8",
"attr_price": "29.8",
"attr_value": "70CM",
"goods_attr_id": "30",
"goods_id": "10"
],
[
"attr_id": "11",
"attr_price": "29.8",
"attr_value": "黑色",
"goods_attr_id": "28",
"goods_id": "10"
]
]
$arr1 = [];
foreach ($arr as $k => $v) {
$arr1[$v[attr_id]][] = $v;
}
// 輸出
$arr1 = [
'8' => [
[
"attr_id": "8",
"attr_price": "29.8",
"attr_value": "70CM",
"goods_attr_id": "30",
"goods_id": "10"
],
[
"attr_id": "8",
"attr_price": "29.8",
"attr_value": "60CM",
"goods_attr_id": "30",
"goods_id": "10"
],
],
'11' => [
[
"attr_id": "11",
"attr_price": "29.8",
"attr_value": "藍(lán)色",
"goods_attr_id": "31",
"goods_id": "10"
],
[
"attr_id": "11",
"attr_price": "29.8",
"attr_value": "黑色",
"goods_attr_id": "28",
"goods_id": "10"
],
],
]別的瀏覽器也這樣嗎,換個(gè)試試
??不知道什么原因,他們刪除了iOS下websocket的實(shí)現(xiàn),只留了一個(gè)handler的interface。在weex的github上,找到0.12或之前的版本,還有websocket的實(shí)現(xiàn)??梢灾苯邮褂?,記得要注冊handler。
看這個(gè)樣子不像是圖片沒加載
只要有一個(gè)為true就不通過
if(require == true){
console.log('不通過')
break//結(jié)束循環(huán)
}
裝飾器是裝飾對象的 class 也是聲明對象的一種方式
this.$emit('hello');
是觸發(fā)hello事件,而不是執(zhí)行hello函數(shù)
控制臺看是不準(zhǔn)的, 如果返回頭的content-type沒有指定編碼,就有可能顯示亂碼;
關(guān)鍵看你的頁面使用的編碼,和接口的編碼是不是一至.
+運(yùn)算符規(guī)則:
附原題
var x = {toString: function() {return "foo"; },
valueOf: function() {return 42; }};
window.console.log ("x="+x); // x=42
window.console.log ("x="+x.toString()); //x=foo
"x=".valueOf() 為“x=", x.valueOf()為42, 因?yàn)椤眡=“是字符串,故42也轉(zhuǎn)換成字符串與之拼接。
都說互聯(lián)網(wǎng)開發(fā)盡量不用外鍵,那么這里的不用外鍵到底代表的啥意思呢?
這里的外鍵指的數(shù)據(jù)庫的外鍵約束。
不用外鍵約束。比如刪除一張表中的數(shù)據(jù)時(shí),如果要級聯(lián)刪除另一張表中關(guān)聯(lián)的數(shù)據(jù),以往是由數(shù)據(jù)庫來級聯(lián)約束的,現(xiàn)在應(yīng)該將其移到程序中由程序來保持?jǐn)?shù)據(jù)的一致性。
是的。外鍵這種約束關(guān)系不在由數(shù)據(jù)庫幫你保持維護(hù),由應(yīng)用程序維護(hù)。
外鍵的定義就是在一個(gè)表中的字段是另外一張表中的主鍵。如果僅按照"不使用外鍵"這幾個(gè)字的字面理解,就是要把外鍵字段抽取出來放在一張中間表中。簡單說就是都當(dāng)成多對多來處理。
不是的。怎么建表還是和原來一樣,只不過在需要建立外鍵約束的地方不建立外鍵約束而已。
比如我們原來建表語句是這樣的:
CREATE TABLE `user` (
`user_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`user_name` varchar(50) NOT NULL DEFAULT '' COMMENT '用戶名',
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `order` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`total_price` decimal(10,2) NOT NULL DEFAULT '0.00',
`user_id` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `for_indx_user_id` (`user_id`),
CONSTRAINT `for_indx_user_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
不是用外鍵約束后:
CREATE TABLE `user` (
`user_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`user_name` varchar(50) NOT NULL DEFAULT '' COMMENT '用戶名',
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `order` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`total_price` decimal(10,2) NOT NULL DEFAULT '0.00',
`user_id` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
不適用外鍵約束后,為了加快查詢我們通常會(huì)給不建立外鍵約束的字段添加一個(gè)索引。
CREATE TABLE `order` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`total_price` decimal(10,2) NOT NULL DEFAULT '0.00',
`user_id` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
如果你理解了,你下面的問題就自然而然不存在了。
避免使用外鍵,可以在插入數(shù)據(jù)時(shí)通過程序維持約束關(guān)系。
使用外鍵約束優(yōu)點(diǎn):
使用外鍵約束缺點(diǎn):
實(shí)際開發(fā)中,一般不會(huì)建立外鍵約束。
hashlib.md5()未運(yùn)行時(shí),pycharm未推測出其返回值的類型。
可通過pep-0484中的方法指定變量類型,pycharm就理解了。
import hashlib
import _hashlib
md5 = hashlib.md5() # type: _hashlib.HASH
def lower(name: str) -> str:
return name.lower()我有一計(jì),先弄一個(gè)同名的類,編譯成.class文件,再把他那個(gè)jar包以zip形式打開,把里面的.class文件替換成你自己寫的,完工
提供一個(gè)思路,用PHP的embed sapi,實(shí)現(xiàn)一個(gè)這樣的C程序:
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(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ù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。