網頁

2012年12月31日 星期一

Javascript學習筆記-Array initial

不管什麼事,總是會忘記,所以才需要記錄,最近太忙,更新沒以前來的多,在這個2012的最後一天,記個最近做的,又很簡單的事,javascript的Array初始化

javascript的Array初始化大概有幾個

<1>
var test = new Array("a", "b", "c", "d");


<2>
var test = new Array();
test[] = "a"
test[] = "b"
test[] = "c"
test[] = "d"


加值進去也可以寫成下述

test[0] = "a"
test[1] = "b"
test[2] = "c"
test[3] = "d"


或用test.push("a"); //效果一樣

<3>
var test = [ "a", "b", "c", "d" ];


若想做成跟map一樣,則

var test = new Array();
test["A"] = "a"
test["B"] = "b"
test["C"] = "c"
test["D"] = "d"




var test = { "A":"a", "B":"b", "C":"c", "D":"d" };

複雜一點,內含陣列的,也可以寫成
var test = {
    "A" : "a",
    "B" : [ "ba", "bb", "bc" ],
    "C" : { id: "ba", label: "bb", text: "bc" },
    "D" : "d"
};


在json上很常用,就這幾種吧

2012年12月24日 星期一

CentOS筆記-開機自動啟動httpd及mysqld

主機放在公司,停電就活生生的被關機了,開機後一堆服務都不在,還是設定一下,開機自動啟動httpd及mysqld

/sbin/chkconfig httpd on
/sbin/chkconfig mysqld on

chkconfig --list |more //可以查看每個服務在哪些level有開

參考網址:
第十八章、認識系統服務 (daemons)-chkconfig
Author 說: phpmailer使用經驗(解決無法寄信的問題)

2012年12月23日 星期日

SQL學習筆記-SET IDENTITY_INSERT

有個案子用的是sybase,正好要重新建置,想說就把資料都備份成SQL出來後,再重新放入就好,沒想到重建好後,insert不進去了,出現下列訊息

ERROR: Explicit value specified for identity field in table 'xxxx'
when 'SET IDENTITY_INSERT' is OFF.


查詢了下才知道,id是primary key,是不能指定的,但我偏偏是備份耶,id是一定會用到的,沒指定到時程式整個混亂,最後找到個解法,但還是不是很好用

set IDENTITY_INSERT table名稱 on
{執行此talbe相關所有sql}
set IDENTITY_INSERT table名稱 on


這樣就可以了


參考網址:
set IDENTITY_INSERT on 和 off 的设置

2012年12月20日 星期四

Mac學習筆記-在Mountain Lion安裝Macport

Mountain Lion上好像不再有port這個好用的command line指令了,但我又需要用到它,只好找找看

先找到MacPorts的官網:http://www.macports.org/,找到Download,看起來是有


按下後就下載了dmg檔可以直接安裝,我個人是安裝在預設的目錄下,但直接打port仍然沒回應,於是我用下列指令建一個link,讓我之後可以直接使用

cd /sbin
sudo ln -s /opt/local/bin/port port


sudo port install pkgconfig

就發現可以安裝成功了

參考網址:
Installing MacPorts
OS X 10.8 Mountain Lion Preview + MacPorts

2012年12月13日 星期四

iOS開發筆記-利用UITableCell取得正確的index

使用tableView時,總會有個問題,就是資料是直接就load進來,但veiw不是,也就是往下捲動後,未呈現者才會load進view,但最近出現個狀況,就是用tag來存放到時要刪除的index,但因為後來才load進來,所以發現超出範圍的tag值只有剛好load到者會被設定,其他變成重新計算,如下圖


說實在搞不懂為什麼,但最近實在太忙,沒時間去細想問題點(大概就出在loadview這function),基本上我要刪除時,是按下按鈕後,找出這按鈕是哪一個row,對應到array中的值時,所以只要取得是點選到哪一列cell就好,改用底下的寫法就可以了

UIButton *btn = (UIButton*)sender;
//取得UITableViewCell
UIView *superView = btn.superview;
while (![superView isKindOfClass:[UITableViewCell class]]) {
  superView = superView.superview;
}
//一定有UITableViewCell,直接指定
UITableViewCell *cell = (UITableViewCell*)superView;

__delItemIndex = [__list indexPathForCell:cell].row;

這就__delItemIndex就是我們要的index值了