SCRI打標機字元計算
① 什麼是PostScript
PostScript是一種編程語言,最適用於列印圖像和文字(無論是在紙,膠片或非物質的CRT都可)。用現今的行話講,它是頁面描述語言。它與1985年由Adobe推出,最早在AppleLaserWriter上出現(據作者所知)。
PostScript的主要用意是是為以相對設備獨立的方式描述影像提供一種方便的語言。該相對設備獨立是指不以某種特定設備特性作參照,來描述影像(比如印表機的解析度),這樣同一種描述不需修改就可適用於任何一種PostScript印表機(比如,LaserWriter 或Linotron)。實際情況下,有些PostScript文件對於目標設備做假設定(比如它的解析度或紙匣的數量),但這並不實用,而且局限了可轉移性。
對於語言本身,通常是解譯的,如RPN計算器一樣的存儲方式。程序把運算的參數存儲在一起,然後調用該操作。通常情況下,運算後將結果留在存儲顯示上。例如,我們將12乘以134。我們會使用以下PostScript程式碼:12 134 mul前面的兩個字「12」和「134」將12和134存儲顯示。「mul」激活相乘運算,將兩個數值相乘,並將結果推倒存儲顯示上。結果數值將保留在那裡供以後程序中其它運算時使用。
根據手冊中Adobe使用的規定,作者用以下兩個主題概括運算:參數-1 參數-2。此概念是指使用運算時要推出參數-1 參數-2等後方可激活運算。運算後將顯示結果。許多運算返回後無結果(因副作用);返回後顯示「-」。
PostScript的發展歷程
PostScript至今以有大約15年歷史了。它對於印製工業產生很深淵的影響,甚至到今天仍保留著當LaserWriter印表機問世時重要的地位。
以下是PostScript的發展歷程的一個概況。其中有些資料源於「Accidental empires」,由Robert Cringely編寫的關於個人計算機革新的書。
為了更好理會PostScript,我們必須先了解在它出現以前市場是怎樣運做的。在那時候,需要排版設備的話要找Acme Typesetters,他們會提供一套Acme系統及Acme輸出設備。該Acme系統和其他生產商的設備不兼容。在多數情況下,與其他系統調換數據相當困難,幾乎是不可能的。
如果擁有一台個人計算機,連接在一台只能打出低品質點陣圖字元的點陣印表機上。對於圖像的列印效果也只能被在那個時代購買印表機的傻瓜們接受。
PostScript的歷史由Parc開始,它是施樂的研究院,許多我們現在不以為然的計算機技術都是從那裡開發的:幾個首要的例子,如雷射印表機,圖像使用者界面和乙太網。
John Warnock是工作於施樂的出色的工程師之一。他開發了名為「Interpress」的語言,用於操作施樂雷射印表機。他和他的上司,Chuck Geschke,用了兩年時間力圖讓施樂把Interpress商業化。當建議被拒絕後,他們決定離開施樂,自立門戶。
Adobe的誕生
John Warnock和Chuck Geschke把他們的公司取名為Adobe,位於加州的Los Altos,Warnock的家。房子後面有一條小溪,有時你能在關於Napa Valley的酒類向導圖上看到,Napa Valley是出產最純的加州酒的地方。
最初,Warnock和Geschke曾設想自行組建一台真正強大的印表機,但很快他們意識到為其他生產商提供可控制他們生產的印表機的工具更現實。
PostScript Level 1
初始時只稱作PostScript。「Level 1」是為了與新近升級的Level 2區別而後加的。
PostScript是一個非常強大的語言,類似與Forth,另一種計算機語言。開始時需要一套相當強大的系統運做PostScript。事實上,在它推出的頭幾年中,PostScript印表機具有更強的處理能力,可以和Macintosh機連接使用。
PostScript 是相對設備獨立的。也就是說PostScript文件可以在任何PostScript設備中運做。你可在雷射印表機上得到300dpi的列印效果,但同樣影像在imagesetter中就可得到漂亮且清晰的2400dpi效果。對於用戶來講,他們不需要受限與一個生產商,可自由選擇最適合要求的設備。
PostScript的騰飛
對Adobe來說,PostScript是一個相當大的賭注,如果沒有Apple計算機的Steve Jobs,他們可能會無法向市場證實PostScript的價值和意義。
1985年,Macintosh計算機的銷售量開始下降,而Apple的新機型迫切需要一個有威力的應用程式。Steve
Jobs對Adobe的技術很感興趣,投資了Adobe 2.5百萬讓Warnock為Apple LaserWriter編寫PostScript控制器。該印表機和HP LaserJet相似,但PostScript控制器可以使它輸出「typesetter」品質。
與功能強大的雷射印表機連接的計算機並不會產生大的影響,但Apple和Adobe很幸運地在偶然機會遇到第三個合作夥伴Als,一個剛起步的小公司,它編寫了能夠充分發揮出Mac 和LaserWriter功能的應用程式,該軟體就是PageMaker。
在桌上型電腦的問世後的一年內,LaserWriter,PostScript和PageMaker的結合挽救了Apple,Als和Adobe也由此變成了有錢的公司。Linotype是首家賞識PostScript價值的圖像藝術供應商,它推出了自帶專用PostScript RIP的imagesetter。其他的生產商也緊跟其後,很快地PostScript就成了印前業的國際性混合語。
1994:PostScript Level 2
大約在1994,Adobe發行了PostScript的下個修訂版本Level 2。 Level 2是個具有重大意義的升級版,也是印前業者急切期盼的版本。
最重要的功能:
增進的速度和可靠性:在Level 2出現之前,Limitcheck和Vmerror PostScript錯誤非常麻煩,令人頭痛。Adobe優化了PostScript程式碼和增強程式碼的記憶管理功能。該功能提高了功效,尤其對於旋轉的掃描作業。
支持分立的內置RIP:Level 2 RIPs能夠接受合成的PostScript文件,自行處理分色工作。它並不是一個必須遵循的功能,不同生產商的Level 2 RIPs的功能也有不同。
RIP中解壓縮影像:Level 2 RIPs能夠解壓縮JPEG和CCITT
支持合成字體:該功能對於亞洲國家來講相當重要,他們的字元比歐洲使用的大。Apple通過QuickDraw
GX來支持合成字體。現今你可能只在Apple的檔案儲藏櫃里找到,還有其他的一些技術突破如OpenDoc 和the Newton。
字體和字型的緩存:有了Level 2,令人討厭的字體緩存刪除沒有了。
字型的緩存問題幾年後通過一些整版應用程式如PressWise 和Preps 解決了。
改進的驅動程式:Macintosh的LaserWriter 8和Adobe的Windows 3.1系統PostScript driver 2.X為基礎,聯合恰當的PPD-drivers。
改進的網屏演算法:對於許多的RIP生產商,當Level
2推出已是過時的新聞。比如Agfa,已在這前一年就已銷售它的對稱網屏技術,為膠印業提供高品質的無網屏鏡像效果。Adobe版本被稱為准確網屏。
Level 2的市場應用較慢
先發表Level 2規范,然後才開始研究它的實際應用,這可以說是Adobe的一大錯誤。更為難堪的是,競爭者們推出Level 2的競爭產品的速度比Adobe想像的更快。
雖然PostScript Level 2具有明顯的優點,但卻花費了很長時間才真正開始應用新功能。例如在Level 2推出的6年後,XPress4.11還不能很好地支持分立內置RIP功能.
19XX:PostScript 3
由於一些不明確的原因,Adobe把最新升級版本取名為PostScript 3,而不是PostScript Level 3。和Level 2相比,3升級的意義並不大。這是可以理解的,因為當時許多應用程式還正在如何正確支持好Level 2的困惑中。
PostScript 3的主要優點:
每種顏色支持超過256個灰階。Adobe在PostScript程式碼中包含了12-bit的網屏。可支持每種顏色多達4096個。在過去,256灰階的極限有時可看到條紋狀,尤其是混合色。
支持PDF:PostScript 3 RIPs可支持PostScript Level 2和PDF文件。
改進的分立內置RIP支持功能:PostScript Level 2
RIP本身已經能夠完成分色作業,但對於某些類型的影像如雙網屏和多彩印影像就不能處理。PostScript 3含有名為Device N的色域。如果非CMKY色彩影像解譯成該色域內,PostScript 3 RIP能正確地對影像進行分色。
網路列印:在如今網路發燒的時代,Adobe也不幹落後,在PostScript增添了網路功能。有趣的是沒有Adobe的OEM用戶想嘗試該功能。
PostScript有哪些特點?
PS的最大特點是避免了版面製作對使用設備的依賴信,只要符合PS這個標準的數據格式,不管是用MAC微機編輯也好,還是用SUN工作站進行編輯也好,都可以通過列印驅動程序獲得共同的PS編碼文件;
PS的另一特點是能夠綜合處理文字和圖像,在一頁印刷品中,PS將其中的所有信息都用一種計算機數據來表現和描述,為圖文合一的版面處理提供了可能;
有了這種頁面數據格式,不同生產廠家的通用計算機之間和各種專用計算機系統(設計用,文字處理用,圖像製版用等)之間,才可能進行數字化數據的交換,它是印前處理系統開放化的基礎之一。
② 截取字元串中的<script>標簽
/<script[\w\W]+jquery_182[\w\W]+<\/script>/g
再優化下吧
③ 9600元打標機,使用3年,如何算折舊
個人認為可以考慮以下幾點:
1、使用壽命:評估打標機常規壽命是幾年?它還能用多久。(激光打標機一般按7年或10年算)
2、健康狀況:設備的保養以及使用頻率。保養的好有看樣,使用頻率過高部件損壞嚴重。
3、市場行情:參照該設備目前市場價格,或該設備的二手價格。
算折舊的方法太多少,結果也各不相同,你自己先看下再作取捨吧。
折舊方法:
一、平均年限:
平均年限法又稱為直線法,是將固定資產的折舊均衡地分攤到各期的一種方法。採用這種方法計算的每期折舊額均是等額的。計算公式如下:
年折舊率=(1-預計凈殘值率)/預計使用年限×100%
月折舊率=年折舊率÷12
月折舊額=固定資產原價×月折舊率
上述計算的折舊率是按個別固定資產單獨計算的,稱為個別折舊率,即某項固定資產在一定期間的折舊額與該固定資產原價的比率。通常,企業按分類折舊來計算折舊率,計算公式如下:
某類固定資產年折舊額=(某類固定資產原值-預計殘值+清理費用)/該類固定資產的使用年限
某類固定資產月折舊額=某類固定資產年折舊額/12
某類固定資產年折舊率=該類固定資產年折舊額/該類固定資產原價×100%
採用分類折舊率計算固定資產折舊,計算方法簡單,但准確性不如個別折舊率。
採用平均年限法計算固定資產折舊雖然簡單,但也存在一些局限性。例如,固定資產在不同使用年限提供的經濟效益不同,平均年限法沒有考慮這一事實。又如,固定資產在不同使用年限發生的維修費用也不一樣,平均年限法也沒有考慮這一因素。
因此,只有當固定資產各期的負荷程度相同,各期應分攤相同的折舊費時,採用平均年限法計算折舊才是合理的。
二、工作量法:
工作量法是根據實際工作量計提折舊額的一種方法。這種方法可以彌補平均年限法只重使用時間,不考慮使用強度的缺點,計算公式為:
每一工作量折舊額={固定資產原價×(1-殘值率)}/預計總工作量
某項固定資產月折舊額=該項固定資產當月工作量×每一工作量折舊額
三、加速折舊
加速折舊法也稱為快速折舊法或遞減折舊法,其特點是在固定資產有效使用年限的前期多提折舊,後期少提折舊,從而相對加快折舊的速度,以使固定資產成本在有效使用年限中加快得到補償。
常用的加速折舊法有兩種:
(1)雙倍余額遞減法
雙倍余額遞減法是在不考慮固定資產殘值的情況下,根據每一期期初固定資產賬面凈值和雙倍直線法折舊額計算固定資產折舊的一種方法。計算公式如下:
年折舊率=2/預計的折舊年限×100%
月折舊率=年折舊率÷12
月折舊額=固定資產賬面凈值×月折舊率
這種方法沒有考慮固定資產的殘值收入,因此不能使固定資產的賬面折余價值降低到它的預計殘值收入以下,即實行雙倍余額遞減法計提折舊的固定資產,應當在其固定資產折舊年限到期的最後兩年或者(當採用直線法的折舊額大於等於雙倍余額遞減法的折舊額時),將固定資產帳面凈值扣除預計凈殘值後的余額平均攤銷。
例如:某企業一固定資產的原價為10 000元,預計使用年限為5年,預計凈殘值200元,按雙倍余額遞減法計算折舊,每年的折舊額為:
雙倍余額年折舊率=2/5×100%=40%
第一年應提的折舊額=10 000×40%=4000(元)
第二年應提的折舊額=(10 000-4 000)×40%=2 400(元)
第三年應提的折舊額=(6 000-2 400)×40%=1 440(元)
從第四年起改按平均年限法(直線法)計提折舊。
第四、第五年的年折舊額=(10 000-4 000-2 400-1 440-200)/2=980(元)
(2)年數總和法
年數總和法也稱為合計年限法,是將固定資產的原值減去凈殘值後的凈額和以一個逐年遞減的分數計算每年的折舊額,這個分數的分子代表固定資產尚可使用的年數,分母代表使用年數的逐年數字總和。計算公式為:
年折舊率=尚可使用年限/預計使用年限折數總和
或:年折舊率=(預計使用年限-已使用年限)/(預計使用年限×{預計使用年限+1})÷2×100%
月折舊率=年折舊率÷12
月折舊額=(固定資產原值-預計凈殘值)×月折舊率
仍以前例來說明,若採用年數總和法計算,各年的折舊額如下表:
年份 尚可使用年限 變動折舊率 每年折舊額(元) 累計折舊(元)
1 5 5/15 3 266.7 3 266.7
2 4 4/15 2 613.3 5 880
3 3 3/15 1 960 7 840
4 2 2/15 1 306.7 9 146.7
5 1 1/15 653.3 9 800
由上表可以看出,年數總和法所計算的折舊費隨著年數的增加而逐漸遞減,這樣可以保持固定資產使用成本的均衡性和防止固定資產因無損耗而遭受的損失。
④ 什麼是javaerrorscript拜託了各位 謝謝
Javascript是一種由Netscape的LiveScript發展而來的腳本語言,主要目的是為了解決伺服器終端語言,比如,遺留的速度問題。當時服務端需要對數據進行驗證,由於網路速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。於是Netscape的瀏覽器Navigator加入了Javascript,提供了數據驗證的基本功能。 JavaScript 的正式名稱是 "ECMAScript"。這個標准由 ECMA 組織發展和維護。ECMA-262 是正式的 JavaScript 標准。這個標准基於 JavaScript (Netscape) 和 JScript (Microsoft)。Netscape (Navigator 2.0) 的 Brendan Eich 發明了這門語言,從 1996 年開始,已經出現在所有的 Netscape 和 Microsoft 瀏覽器中。ECMA-262 的開發始於 1996 年,在 1997 年 7 月,ECMA 會員大會採納了它的首個版本。 在1998 年,該標准稱為了國際 ISO 標准 (ISO/IEC 16262)。這個標准仍然處於發展之中。 歷史 大概在1992年,一家稱作Nombas的公司開始開發一種叫做C減減(C-minus-minus,簡稱Cmm)的嵌入式腳本語言。這個腳本語言捆綁在一個叫做CEnvi的共享軟體產品中,當Netscape Navigator嶄露頭角時,Nombas開發了一個可以嵌入網頁中的CEnvi的版本。這些早期的試驗稱為EspressoPage(濃咖啡般的頁面),它們代表了第一個在萬維網上使用的客戶端腳本語言。而Nombas絲毫沒有料到它的理念將會成為網際網路的一塊重要基石。 基本概念 在這里只作簡單介紹,在以後的例子中結程序再作具體解釋其作用。 1、運算符 運算符就是完成操和的一系列符號,它有七類: 賦值運算符、算術運算符、比較運算符、邏輯運算符、條件運算、位操作運算符和字元串運算符。 2、表達式 運算符和操作數的組合稱為表達式,通常分為四類:賦值表達式、算術表達式、布爾表達式和字元串表達式。 3、語句 Javascript程序是由若干語句組成的,語句是編寫程序的指令。Javascript提供了完整的基本編程語句,它們是: 賦值語句、switch選擇語句、while循環語句、for循環語句、do while循環語句、break循環中止語句和continue循環中斷語句。 4、函數 函數是命名的語句段,這個語句段可以被當作一個整體來引用不著和執行。使用函數要注意以下幾點: 1)函數由關鍵字function定義; 2)函數必須先定義後使用,否則將出錯; 3)函數名是調用函數時引用的名稱,它對大小寫是敏感的,調用函數時不可寫錯函數名; 4)參數表示傳遞給函數使用或操作的值,它可以是常量,也可以是變數; 5)return語句用於返回表達式的值,也可以沒有。 5、對象 Javascript的一個重要功能就是基於對象的功能,通過基於對象的程序設計,可以用更直觀、模塊化和可重復使用的方式進行程序開發。 一組包含數據的屬性和對屬性中包含數據進行操作的方法,稱為對象。比如要設定網頁的背景顏色,所針對的對象就是document,所用的屬性名是bgcolor,如document.bgcolor="blue",就是表示使背景的顏色為藍色。 6、事件 用戶與網頁交互時產生的操作,稱為事件。絕大部分事都由用戶的動作所引發,如:用戶按滑鼠的按鈕,就產生onclick事件,若滑鼠的指針的鏈接上移動,就產生onmouseover事件等等。在Javascript中,事件往往與事件處理程序配套使用。 學習Javascript比較快速有效的方法是先熟悉一些基本概念,然後找幾個別人設計好的程序認真仔細地分析一遍,再稍作改動,再看看能否達到預期目的,不斷地舉一反三,既可以加深對一些參數、設計方法的理解,又可以快速地提高自己的水平。另外,再提醒一下:Javascript對大小寫是敏感的,特別是一些對象、方法、屬性的大小寫一定要一致,要養成一種良好的習慣,否則在調試程序時可要累死你了。 7、變數 如var myVariable = "some value"; 特點 能夠具有交互性,能夠包含更多活躍的元素,就有必要在網頁中嵌入其它的技術。如:Javascript、VBScript、Document Object Model(文件目標模塊)、Layers和 Cascading Style Sheets(CSS),這里主要講Javascript。那麼Javascript是什麼東東?Javascript就是適應動態網頁製作的需要而誕生的一種新的編程語言,如今越來越廣泛地使用於Internet網頁製作上。 Javascript是由 Netscape公司開發的一種腳本語言(scripting language),或者稱為描述語言。在HTML基礎上,使用Javascript可以開發互動式Web網頁。Javascript的出現使得網頁和用戶之間實現了一種實時性的、動態的、交互性的關系,使網頁包含更多活躍的元素和更加精彩的內容。 運行用Javascript編寫的程序需要能支持Javascript語言的瀏覽器。Netscape公司 Navigator 3.0以上版本的瀏覽器都能支持 Javascript程序,微軟公司 Internet Explorer 3.0以上版本的瀏覽器基本上支持Javascript。微軟公司還有自己開發的Javascript,稱為JScript。 Javascript和Jscript基本上是相同的,只是在一些細節上有出入。 Javascript短小精悍, 又是在客戶機上執行的,大大提高了網頁的瀏覽速度和交互能力。 同時它又是專門為製作Web網頁而量身定做的一種簡單的編程語言。 JavaScript 使網頁增加互動性。JavaScript 使有規律地重復的HTML文段簡化,減少下載時間。JavaScript 能及時響應用戶的操作,對提交表單做即時的檢查,無需浪費時間交由 CGI 驗證。JavaScript 的特點是無窮無盡的,只要你有創意。 與Java的不同 很多人看到 Java 和 JavaScript 都有「Java」四個字,就以為它們是同一樣東西,連我自己當初也是這樣。其實它們是完完全全不同的兩種東西。Java,全稱應該是 Java Applet,是嵌在網頁中,而又有自己獨立的運行窗口的小程序。Java Applet 是預先編譯好的,一個 Applet 文件(.class)用 Notepad 打開閱讀,根本不能理解。Java Applet 的功能很強大,可以訪問 http、ftp等協議,甚至可以在電腦上種病毒(已有先例了)。相比之下,JavaScript 的能力就比較小了。JavaScript 是一種「腳本」(「Script」),它直接把代碼寫到 HTML 文檔中,瀏覽器讀取它們的時候才進行編譯、執行,所以能查看 HTML 源文件就能查看JavaScript 源代碼。JavaScript 沒有獨立的運行窗口,瀏覽器當前窗口就是它的運行窗口。它們的相同點,我想只有同是以 Java 作編程語言一點了。 Java是由Sun Microsystems公司於1995年5月推出的Java程序設計語言和Java平台的總稱。用Java實現的HotJava瀏覽器(支持Java applet)顯示了Java的魅力:跨平台、動感的Web、Internet計算。從此,Java被廣泛接受並推動了Web的迅速發展,常用的瀏覽器現在均支持Java applet。另一方面,Java技術也不斷更新。 Java平台由Java虛擬機(Java Virtual Machine)和Java 應用編程介面(Application Programming Interface、簡稱API)構成。Java 應用編程介面為Java應用提供了一個獨立於操作系統的標准介面,可分為基本部分和擴展部分。在硬體或操作系統平台上安裝一個Java平台之後,Java 應用程序就可運行。現在Java平台已經嵌入了幾乎所有的操作系統。這樣Java程序可以只編譯一次,就可以在各種系統中運行。 Java分為三個體系JavaSE,JavaEE,JavaME。 開發軟體 一個JavaScript 程序其實是一個文檔,一個文本文件。它是嵌入到 HTML 文檔中的。所以,任何可以編寫 HTML 文檔的軟體都可以用來開發 JavaScript。在此我推薦大家用 FrontPage 2000 附帶的 Microsoft 腳本編輯器(在 FrontPage 菜單 | 工具 | 宏 | Microsoft 腳本編輯器)。它是個像 Visual Basic / C++ 一樣的程序開發器,能對正在輸入的語句作出簡要提示。配合 FrontPage 2000,使工作量大大減少。 使用方法 一、Javascript在網頁的用法 Javascript加入網頁有兩種方法: 1、直接加入HTML文檔 這是最常用的方法,大部分含有Javascript的網頁都採用這種方法,如: <script language="Javascript"> <!-- document.writeln("這是Javascript!採用直接插入的方法!"); //-Javascript結束--> </script> 在這個例子中,我們可看到一個新的標簽: <script>……</script>,而<script language="Javascript"> 用來告訴瀏覽器這是用Javascript編寫的程序,需要調動相應的解釋程序進行解釋。(w3c已經建議使用新的標准:<script type="txet/javascript">) HTML的注釋標簽<!--和-->:用來去掉瀏覽器所不能識別的Javascript源代碼的,這對不支持 Javascript 語言的瀏覽器來說是很有用的。 //-Javascript結束:雙斜杠表示 Javascript的注釋部分,即從//開始到行尾的字元都被忽略。 至於程序中所用到的document.write()函數則表示將括弧中的文字輸出到窗口中去, 這在後面將會詳細介紹。 另外一點需要注意的是,<script>……</script>的位置並不是固定的,可以包含在<head>......</head> 或<body>.....</body>中的任何地方。 2、引用方式 如果已經存在一個Javascript源文件(以js為擴展名),則可以採用這種引用的方式,以提高程序代碼的利用率。其基本格式如下: <script src=url language="Javascript"></script> 其中的Url就是程序文件的地址。同樣的,這樣的語句可以放在HTML文檔頭部或主體的任何部分。 如果要實現「直接插入方式」中所舉例子的效果,可以首先創建一個Javascript源代碼文件「Script.js」,其內容如下: document.writeln("這是Javascript!採用直接插入的方法!"); 在網頁中可以這樣調用程序:<script src="Script.js" language="Javascript"></script> 。 在web編程中一些比較常用的javascript函數 /** * 一些常用的javascript函數(方法) * * 為便於使用,均書寫成String對象的方法 * 把他保存為.js文件,可方便的擴展字元串對象的功能 * * 方法名 功能 * ----------- -------------------------------- * Trim 刪除首位空格 * Occurs 統計指定字元出現的次數 * isDigit 檢查是否由數字組成 * isAlpha 檢查是否由數字字母和下劃線組成 * isNumber 檢查是否為數 * lenb 返回位元組數 * isInChinese 檢查是否包含漢字 * isEmail 簡單的email檢查 * isDate 簡單的日期檢查,成功返回日期對象 * isInList 檢查是否有列表中的字元字元 * isInList 檢查是否有列表中的字元字元 */ /*** 刪除首尾空格 ***/ String.prototype.Trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); } /*** 統計指定字元出現的次數 ***/ String.prototype.Occurs = function(ch) { // var re = eval("/[^"+ch+"]/g"); // return this.replace(re, "").length; return this.split(ch).length-1; } /*** 檢查是否由數字組成 ***/ String.prototype.isDigit = function() { var s = this.Trim(); return (s.replace(/\d/g, "").length == 0); } /*** 檢查是否由數字字母和下劃線組成 ***/ String.prototype.isAlpha = function() { return (this.replace(/\w/g, "").length == 0); } /*** 檢查是否為數 ***/ String.prototype.isNumber = function() { var s = this.Trim(); return (s.search(/^[+-]?[0-9.]*$/) >= 0); } /*** 返回位元組數 ***/ String.prototype.lenb = function() { return this.replace(/[^\x00-\xff]/g,"**").length; } /*** 檢查是否包含漢字 ***/ String.prototype.isInChinese = function() { return (this.length != this.replace(/[^\x00-\xff]/g,"**").length); } /*** 簡單的email檢查 ***/ String.prototype.isEmail = function() { var strr; var mail = this; var re = /(\w+@\w+\.\w+)(\.\w*)(\.\w*)/i; re.exec(mail); if(RegExp.!="" && RegExp.!="." && RegExp.!=".") strr = RegExp.+RegExp.+RegExp.; else if(RegExp.!="" && RegExp.!=".") strr = RegExp.+RegExp.; else strr = RegExp.; return (strr==mail); } /*** 簡單的日期檢查,成功返回日期對象 ***/ String.prototype.isDate = function() { var p; var re1 = /(\d)[年./-](\d)[月./-](\d)[日]?$/; var re2 = /(\d)[月./-](\d)[日./-](\d)[年]?$/; var re3 = /(\d)[月./-](\d)[日./-](\d)[年]?$/; if(re1.test(this)) { p = re1.exec(this); return new Date(p[1],p[2],p[3]); } if(re2.test(this)) { p = re2.exec(this); return new Date(p[3],p[1],p[2]); } if(re3.test(this)) { p = re3.exec(this); return new Date(p[3],p[1],p[2]); } return false; } /*** 檢查是否有列表中的字元字元 ***/ String.prototype.isInList = function(list) { var re = eval("/["+list+"]/"); return re.test(this); }
求採納
⑤ json字元串在script標簽中如何取值使用
如果直接取值可以data['rescourceCode'],但是你必須一個json對象,記住是對象,你現在返回專是一個文本字元串,而非對屬象,你應該修改你的ajax的dataType: 'json',才可以。
如果是遍歷json對象:用(for a in data){} a為屬性名,data[n]為屬性值
⑥ TypeScript 和 JavaScript 的區別
TypeScript 和 JavaScript 是目前項目開發中較為流行的兩種腳本語言,我們已經熟知 TypeScript 是 JavaScript 的一個超集。JavaScript 和 TypeScript 的主要差異:
1、TypeScript 可以使用 JavaScript 中的所有代碼和編碼概念,TypeScript 是為了使 JavaScript 的開發變得更加容易而創建的。例如,TypeScript 使用類型和介面等概念來描述正在使用的數據,這使開發人員能夠快速檢測錯誤並調試應用程序
2、TypeScript 從核心語言方面和類概念的模塑方面對 JavaScript 對象模型進行擴展。
3、JavaScript 代碼可以在無需任何修改的情況下與 TypeScript 一同工作,同時可以使用編譯器將 TypeScript 代碼轉換為 JavaScript。
4、TypeScript 通過類型註解提供編譯時的靜態類型檢查。
5、TypeScript 中的數據要求帶有明確的類型,JavaScript不要求。
6、TypeScript 為函數提供了預設參數值。
7、TypeScript 引入了 JavaScript 中沒有的「類」概念。
8、TypeScript 中引入了模塊的概念,可以把聲明、數據、函數和類封裝在模塊中。