`

全世界最短的IE判定&&javascript的几个函数

阅读更多

以前最短的IE判定借助于IE不支持垂直制表符的特性搞出来的。

 

var ie = !+"\v1";

 

仅仅需要7bytes!参见这篇文章,《32 bytes, ehr ... 9, ehr ... 7!!! to know if your browser is IE》 ,讲述外国人是如何把IE的判定从32 bytes一步步缩简成7 bytes!的故事

但这纪录今年1月8日被一个俄国人打破了,现在只要6 bytes!它利用了IE与标准浏览器在处理数组的toString方法的差异做成的。对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它。详见这里 恭喜你,Aleko ,你真是我的偶像!

 

var ie = !-[1,];
 

如果从非IE的角度判定,可以省一个比特,因为我们做兼容时,绝大多数情况都是IE与非IE地开工。

 

javascript十个最常用的自定义函数

 

(10)addEvent

 

function addEvent(elm, evType, fn, useCapture) {
  if (elm.addEventListener) {
    elm.addEventListener(evType, fn, useCapture);//DOM2.0
    return true;
  }
  else if (elm.attachEvent) {
    var r = elm.attachEvent('on' + evType, fn);//IE5+
    return r;
  }
  else {
    elm['on' + evType] = fn;//DOM 0
  }
}

 

(5)insertAfter()

 

function insertAfter(parent, node, referenceNode) {
    parent.insertBefore(node, referenceNode.nextSibling);
}

 

下面是几个比较有技巧的地方:

首先,做日历控件时需要知道该月第一天离星期天的天数,参照getDay对应值,发现这刚好等于该月第一天的getDay值,所以可以这样获得:

 

new Date(this.Year, this.Month - 1, 1).getDay()

 

还有是获取该月的天数,这里比较精妙,通过获取该月最后一天的getDate值就可以得到该月的天数,但没有办法直接获取该月最后一天。
这里有一个方法,当获取指定年月日的日期时,设置日参数为0,就可以获取上一个月的最后一天,所以可以这样获取:

 

new Date(this.Year, this.Month, 0).getDate()
 

 

 

 

 

分享到:
评论

相关推荐

    三角形判定 用javascript 写的。很不错的。关于三角形判定

    三角形判定 用javascript 写的。很不错的。关于三角形判定三角形判定 用javascript 写的。很不错的。关于三角形判定三角形判定 用javascript 写的。很不错的。关于三角形判定三角形判定 用javascript 写的。很不错的...

    解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码

     这句代码在IE9之前曾被称为世界上最短的IE判定代码。代码虽短但确包含了不少javascript基础知识在里面。在这个例子中代码执行时会先调用数组的toString()方法 ,执行[1,].toString()在IE6,7,8中将会得到“1,”。...

    子集树问题 试设计一个用回溯法搜索子集空间树的函数。该函数的参数包括结点可行性判定函数和上界函数等必要的函数,并将此函数用于解装载问题。

    首先,我们需要明确几个核心概念: ### 回溯法简介 回溯法是一种通过尝试解决子问题,并在子问题无法求解时撤销之前的决策来寻找问题所有(或任一)解的方法。它适用于解决决策树形式的问题,在搜索过程中,可以...

    周期函数的判定与非周期函数的判定.pdf

    周期函数的判定与非周期函数的判定 周期函数是数学中的一种特殊函数,它具有周期...周期函数的判定是一个非常重要的数学问题,本文对周期函数的判定进行了详细的探讨,并给出了多个例子以便更好地理解周期函数的性质。

    魔兽世界API全局函数

    ### 魔兽世界API全局函数详解 #### 一、AccountPlayTimeLimitFunctions:账号游戏时间限制函数 这部分API主要用于管理玩家的游戏时间,包括获取已消耗的时间和剩余时间等。 - **GetBillingTimeRested()**:获取...

    非周期函数判定的实用方法

    为了更好地理解和判定非周期函数,本文将介绍几种实用的判定方法。 首先,让我们从定义域判别法开始。这一方法基于周期函数必须具有无限定义域的前提。定理1明确指出,如果一个函数的定义域被限制在一个有限区间内...

    16 函数极限存在性的判定准则

    国防工业大学高数课件中提到的函数极限存在性的判定准则,是对这个概念进行深入分析的工具。 首先,课件介绍了数列极限存在的判定准则,包括夹逼定理、单调有界原理以及柯西收敛准则。这些定理和原理不仅在数列极限...

    js 全世界最短的IE浏览器判断代码

    to know if your browser is IE》,讲述外国人是如何把IE的判定从32 bytes一步步缩简成7 bytes!的故事 但这纪录今年1月8日被一个俄国人打破了,现在只要6 bytes!它利用了IE与标准浏览器在处理数组的toString方法的...

    麻将胡牌算法的判定函数

    根据给定的信息,本文将详细解释麻将胡牌算法中的判定函数。麻将作为一种深受欢迎的棋牌游戏,在不同的地区有着各自的游戏规则,但其核心在于通过玩家抓牌、打牌、吃碰杠等操作,使得手中的牌满足特定的组合条件,即...

    简洁短小的 JavaScript IE 浏览器判定代码

    这个目前世界上最短的 Javascript 判定 IE 浏览器的方法来自俄罗斯!它已经在各版本的 IE 以及目前其他流行的浏览器上经过测试,基于 IE 的 Bug,微软虽然已经意识到,但是从来没有纠正过。 代码如下: [removed] var...

    判定算法性能优劣的测试函数

    本文将深入探讨“判定算法性能优劣的测试函数”这一主题,旨在帮助读者理解如何通过一系列精心设计的测试函数来验证和比较算法的效能。这些测试函数通常具有多维性和多极值的特性,它们能够揭示算法在解决复杂问题时...

    0-1 Knapsack 试设计一个用回溯法搜索子集空间树的函数。该函数的参数包括结点可行性判定函数和上界函数等必要的函数,并将此函数用于解0-1背包问题。

    为了实现0-1背包问题的回溯算法,我们需要定义几个关键的函数: 1. **可行性判定函数**:用于判断当前加入背包中的物品是否超过背包容量。 2. **上界函数**:估计后续物品加入后可能达到的最大价值,以便剪枝。 ...

    泰勒公式在判定二元函数极限存在性中的应用

    要判定一个二元函数极限的存在性,首先需要考虑的是,当自变量从各个方向趋近于某一点时,函数值是否趋于同一个确定的值。具体来说,就是需要找到两个数X和W,对于任意给定的正数ε,存在δ使得当0<√((x-x0)²+(y-y...

    函数单调性的判定方法.doc

    对一些常用的关于函数单调的性质可总结如下几个结论: ⑴.与+单调性一样。〔为常数〕 ⑵.当时,与具有一样的单调性;当时, 与具有相反的单调性。 ⑶.当恒不等于零时,与具有相反的单调性。 ⑷.当、在上都是增...

    NextData函数判定测试

    ### NextData函数判定测试知识点详解 #### 一、概述 NextData函数的主要功能是根据给定的日期(包括年、月、日),计算并返回该日期的后一天。本篇文章将详细探讨如何针对该函数使用边界值分析法与判定表法来设计...

    函数单调性的判定方法.pdf

    在数学中,我们通常通过两种主要方法来判定一个函数的单调性:定义法和函数性质法。 1.1 定义法 这是最基础的判定函数单调性的方法,它基于函数单调性的基本定义。如果函数f在某个区间D上,对于任意的x1, x2属于D,...

    prime函数判定素数.c

    prime函数判定素数.c

    凸函数的判定_help1

    接下来,我们讨论凸函数的几种单调性: 1. **单调性**:函数f在S上单调,意味着对于所有的x,y∈S,如果x≤y,则f(x)≤f(y)。这是凸函数的一个基础属性,确保函数在集合内非降序。 2. **严格单调性**:如果对于所有...

    二次函数abc判定.doc

    标题中的“二次函数abc判定”指的是在二次函数的一般形式 y = ax^2 + bx + c(a ≠ 0)中,通过分析函数的系数a、b、c来推断函数的特性。描述中提到的“二次函数abc判定.doc”可能是文档的内容集中在如何通过系数a、...

Global site tag (gtag.js) - Google Analytics