《JavaScript语言精粹》拾零

我在看《JavaScript语言精粹》的时候,有些零碎的知识点是平时没有注意到的,记录如下:

-----------

Array

-----------

array.join

如果你想把大量的片段组装成一个字符串,把这些片段放到一个数组中,并用join方法连接它们,通常比用“+”运算符连接这些片段要快些。

在prototype.js就有该用法。

 

array.shift

shift方法通常比pop慢得多

 

判断一个值是否为数组

if (my_value && typeof my_value === 'object' &&

    my_value.constructor === Array) {

    //my_value 是一个数组

}

//该检测对于在不同帧或窗口创建的数组将会给出false。看下面更可靠的检测:

if (my_value && typeof my_value === 'object' &&

    typeof my_value.length === 'number' &&

    !(my_value.propertyIsEnumerable('length')) {

    //my_value确实是一个数组!

}

 

判断一个值是否为数字

function isNumber(value) {

  return typeof value === 'number' && isFinite(value);

}

 

-----------

parseInt

-----------

它的用法parseInt(numString, [radix])

请注意第二个参数,radix

可选项。在 2 和 36 之间的表示 numString 所保存数字的进制的值。如果没有提供,则前缀为 '0x' 的字符串被当作十六进制,前缀为 '0' 的字符串被当作八进制。所有其它字符串都被当作是十进制的。

 

请总是提供第二个参数,以确保'08'的结果为'8'。

 

 

 

 

你可能感兴趣的:(JavaScript,prototype)