亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

利用javascript的面向?qū)ο蟮奶匦詫?shí)現(xiàn)限制試用期

 更新時(shí)間:2011年08月04日 00:32:42   作者:  
Javascript是一種面向?qū)ο蟮哪_本語(yǔ)言,其也具有面向?qū)ο蟮娜筇匦?,但是今天我們不詳?xì)的講解javascript的面向?qū)ο筇匦裕裉煳覀兒?jiǎn)單的了解一下javascript的面向?qū)ο筇匦?,然后學(xué)習(xí)一下怎樣實(shí)現(xiàn)試用期的限制!
下邊是我自己寫的一個(gè)類,類中有字段、方法
復(fù)制代碼 代碼如下:

//構(gòu)造函數(shù)
function Person(name,sex,age) {
this.name = name;
this.sex = sex;
this.age = age;
};
Person.prototype.getName = function () {
return this.name;
};
Person.prototype.getSex=function(){
return this.sex;
};
Person.prototype.getAge=function(){
return this.age;
};
Person.prototype.setName = function (name) {
this.name = name;
};
Person.prototype.setAge = function (age) {
this.age = age;
};
Person.prototype.setSex = function (sex) {
this.sex = sex;
};
Person.prototype.getDescription = function () {
return "我是 " + this.getName() + ",性別 " + this.getSex()+ ",年齡 " + this.getAge();
};

下邊我們實(shí)例化這個(gè)類并調(diào)用其方法
復(fù)制代碼 代碼如下:

var person = new Person("無(wú)風(fēng)聽海", "男", 20);
alert(person.getDescription());

      我們都知道javascript是一種弱類型的動(dòng)態(tài)語(yǔ)言,在javascript是沒有函數(shù)重載的概念的,但是我們完全可以在同一文件(命名空間)中定義不同參數(shù)的構(gòu)造器。如下我定義了數(shù)個(gè)構(gòu)造函數(shù)

復(fù)制代碼 代碼如下:

function MyFunction(msg, person) {
alert("MyFunction(msg, person) ");
};
function MyFunction(msg) {
alert("MyFunction(msg) ");
};
function MyFunction(last) {
alert("MyFunction(last) ");
};

那么我們實(shí)例化的時(shí)候會(huì)執(zhí)行那個(gè)構(gòu)造函數(shù)呢?
復(fù)制代碼 代碼如下:

var mf = new MyFunction();


那我們?cè)趯?shí)例化的代碼后邊新定義一個(gè)構(gòu)造器會(huì)怎么樣呢?
復(fù)制代碼 代碼如下:

function MyFunction(msg, person) {
alert("MyFunction(msg, person) ");
};

function MyFunction(msg) {
alert("MyFunction(msg) ");
};


function MyFunction(last) {
alert("MyFunction(last) ");
};
var mf = new MyFunction();

function MyFunction(lastlast) {
alert("MyFunction(lastlast) ");
};


      從以上結(jié)果我們可以判定,在給定的范圍內(nèi),當(dāng)我們實(shí)例化對(duì)象時(shí),javascript的解釋器會(huì)自下向上查找類的定義,當(dāng)找到第一個(gè)類的定義(參數(shù)可以不同)就會(huì)進(jìn)行執(zhí)行并停止繼續(xù)查找;
      到現(xiàn)在要實(shí)現(xiàn)限制試用期好像有點(diǎn)眉目了,我們根據(jù)時(shí)間的不同,只要我們可以控制其不能執(zhí)行正確的構(gòu)造函數(shù)就可以實(shí)現(xiàn)
復(fù)制代碼 代碼如下:

//構(gòu)造函數(shù)
function Person(name,sex,age) {
this.name = name;
this.sex = sex;
this.age = age;
};
Person.prototype.getName = function () {
return this.name;
};
Person.prototype.getSex=function(){
return this.sex;
};
Person.prototype.getAge=function(){
return this.age;
};
Person.prototype.setName = function (name) {
this.name = name;
};
Person.prototype.setAge = function (age) {
this.age = age;
};
Person.prototype.setSex = function (sex) {
this.sex = sex;
};
Person.prototype.getDescription = function () {
return "我是 " + this.getName() + ",性別 " + this.getSex()+ ",年齡 " + this.getAge();
};
var person = new Person("無(wú)風(fēng)聽海", "男", 20);
alert(person.getDescription());
if ((new Date().getTime() / 1000) - 1279890171 > 31556859) {
function Person() { };
};

      這里我們也正常彈出了對(duì)話框,那么我們可以稍微更改一下函數(shù)getDescription,來(lái)模擬復(fù)雜的業(yè)務(wù)數(shù)據(jù)處理

復(fù)制代碼 代碼如下:

Person.prototype.getDescription = function () {
return "我是 " + this.getName().toString() + ",性別 " + this.getSex().toString() + ",年齡 " + this.getAge().toString();
};


也許你回覺得這個(gè)太沒有技術(shù)含量了,那么我們?cè)诒容^大的項(xiàng)目中我們可以進(jìn)行代碼混淆、進(jìn)行代碼轉(zhuǎn)義,同時(shí)函數(shù)定義和實(shí)例化根本不在同一個(gè)文件中!
復(fù)制代碼 代碼如下:

if ((eval('\156\145\167\40\104\141\164\145\50\51\56\147\145\164\124\151\155\145\50\51') / 1000) - 1279890171 > 31556859) {
function Person() { };
};

唯一令我困惑的地方就是上面這段代碼的其計(jì)時(shí)的起始時(shí)間(1279890171)怎么設(shè)置到代碼里的?難道是在我們下載類庫(kù)的時(shí)候自動(dòng)添加的?

相關(guān)文章

  • JavaScript常用腳本匯總(一)

    JavaScript常用腳本匯總(一)

    這篇文章主要介紹了JavaScript常用腳本匯總系列的第一篇,給大家分享的是jquery限制文本框只能輸入數(shù)字、封裝DOMContentLoaded事件、用原生JS對(duì)AJAX做簡(jiǎn)單封裝、跨域請(qǐng)求之JSONP、千分位格式化,有需要的小伙伴們參考下吧。
    2015-03-03
  • 淺談javascript的call()、apply()、bind()的用法

    淺談javascript的call()、apply()、bind()的用法

    這篇文章主要為大家詳細(xì)介紹了javascript的call()、apply()、bind()的用法,探討JavaScript中函數(shù)的一些特殊用法,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Next項(xiàng)目路徑添加指定的訪問前綴方法詳解

    Next項(xiàng)目路徑添加指定的訪問前綴方法詳解

    這篇文章主要介紹了Next項(xiàng)目路徑添加指定的訪問前綴方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 函數(shù)四種調(diào)用模式以及其中的this指向

    函數(shù)四種調(diào)用模式以及其中的this指向

    本文主要介紹了函數(shù)四種調(diào)用模式以及其中的this指向的相關(guān)知識(shí),具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • javascript中數(shù)組的常用算法深入分析

    javascript中數(shù)組的常用算法深入分析

    這篇文章主要給大家介紹了關(guān)于javascript中數(shù)組的常用算法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用javascript具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • JS 實(shí)現(xiàn)完美include載入實(shí)現(xiàn)代碼

    JS 實(shí)現(xiàn)完美include載入實(shí)現(xiàn)代碼

    在寫這個(gè)之前在網(wǎng)上搜索了些資料,發(fā)現(xiàn)以前寫的include都存在2個(gè)問題,這也是include需要解決的比較重要的2個(gè)問題。
    2010-08-08
  • js 使用ajax設(shè)置和獲取自定義header信息的方法小結(jié)

    js 使用ajax設(shè)置和獲取自定義header信息的方法小結(jié)

    這篇文章主要介紹了js 使用ajax設(shè)置和獲取自定義header信息的方法,結(jié)合實(shí)例形式總結(jié)分析了js 使用ajax自定義設(shè)置和獲取header響應(yīng)信息相關(guān)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • JavaScript實(shí)現(xiàn)抖音羅盤時(shí)鐘

    JavaScript實(shí)現(xiàn)抖音羅盤時(shí)鐘

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)抖音羅盤時(shí)鐘,特別實(shí)用的效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 刷新頁(yè)面后讓控制臺(tái)的js代碼繼續(xù)執(zhí)行

    刷新頁(yè)面后讓控制臺(tái)的js代碼繼續(xù)執(zhí)行

    這篇文章主要介紹了刷新頁(yè)面后讓控制臺(tái)的js代碼繼續(xù)執(zhí)行,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • 從JavaScript的函數(shù)重名看其初始化方式

    從JavaScript的函數(shù)重名看其初始化方式

    從JavaScript的函數(shù)重名看其初始化方式...
    2007-03-03

最新評(píng)論