JavaScript 常见 built-in 函数

目录

  • unescape
  • Function
  • eval
  • Array
  • Object
  • Date
  • RegExp
  • hasOwnProperty
  • Math
  • parselnt
  • shift
  • unshift
  • pop
  • push
  • slice
  • splice
  • split
  • substring
  • substr
  • concat
  • froCharCode
  • charCodeAt
  • atob, btoa
  • Uint8Array

unescape

unescape() 函数可对通过 escape() 编码的字符串进行解码

语法

unescape(string)

说明

该函数的工作原理是这样的:通过找到形式为 %xx 和 %uxxxx 的字符序列(x 表示十六进制的数字),用 Unicode 字符 \u00xx 和 \uxxxx 替换这样的字符序列进行解码。

提示和注释

注释:ECMAScript v3 已从标准中删除了 unescape() 函数,并反对使用它,因此应该用 decodeURI() 和 decodeURIComponent() 取而代之

escape('\xa2')
"%A2"
unescape('\xa2')
"¢"


Function

函数实例化方法

var fun = new Function('a', 'return a')  // 参数是a,返回a

相当于

function fun(a){return a}


eval

eval() 函数是将字符串当作 JS 代码执行

eval("x=10;y=20;document.write(x*y)")


Array

对象用于在单个的变量中存储多个值

new Array(element0, element1, ..., elementn);


Object

一系列对象的基础

> Object(111)
< Number {111}
> Object('111')
< String {"111"}

相当于

new Number(111)


Date

var d = new Date();  // 本地时间

js 定时器有以下两个方法:

  • setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。
  • setTimeout() :在指定的毫秒数后调用函数或计算表达式。


RegExp

RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。

new RegExp(pattern, attributes);

参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。

参数 attributes 是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。


hasOwnProperty

Object的hasOwnProperty()方法返回一个布尔值,判断对象是否包含特定的自身(非继承)属性。

var o = new Object();
o.prop = 'exists';

function changeO() {
  o.newprop = o.prop;
  delete o.prop;
}

o.hasOwnProperty('prop');  // true
changeO();
o.hasOwnProperty('prop');  // false


Math

Math 对象用于执行数学任务

var x = Math.PI; // 返回PI
var y = Math.sqrt(16); // 返回16的平方根

更多对象属性


round

round() 方法可把一个数字舍入为最接近的整数

Math.round(x);

random

返回介于 0(包含) ~ 1(不包含) 之间的一个随机数

Math.random();


parselnt

parseInt() 函数可解析一个字符串,并返回一个整数。

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。

当忽略参数 radix , JavaScript 默认数字的基数如下:

  • 如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。
  • 如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。
  • 如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数
parseInt(string, radix)

radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间


shift

shift 为删除数组内指定的值,若有多个相同的值,默认删除第一个

arrayObject.shift()  // 参数,下标和值都可以


unshift

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度


pop

pop() 方法用于删除并返回数组的最后一个元素

arrayObject.pop()


push

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度

arrayObject.push(newelement1,newelement2,....,newelementX)


slice

slice() 方法可从已有的数组中返回选定的元素

arrayObject.slice(start,end)

返回值

返回一个新的数组,包含从 start 到 end的 arrayObject 中的元素


splice

splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目

arrayObject.splice(index,howmany,item1,.....,itemX)

index 必需 整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置

howmany 必需 要删除的项目数量。如果设置为 0,则不会删除项目

返回值

包含被删除项目的新数组,如果有的话


split

split() 方法用于把一个字符串分割成字符串数组

stringObject.split(separator,howmany)

separato 必需 字符串或正则表达式,从该参数指定的地方分割 stringObject

howman 可选 该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。


substring

substring() 方法用于提取字符串中介于两个指定下标之间的字符

stringObject.substring(start,stop)

start 必需

stop 可选 如果省略该参数,那么返回的子串会一直到字符串的结尾


substr

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符

stringObject.substr(start,length)


concat

concat() 方法用于连接两个或多个数组

该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本

arrayObject.concat(arrayX,arrayX,......,arrayX)


froCharCode

将 Unicode 编码转为一个字符:

var n = String.fromCharCode(65);  // A


charCodeAt

返回字符串第一个字符的 Unicode 编码:

var str = "HELLO WORLD";
var n = str.charCodeAt(0);  // 72


atob, btoa

atob() 方法用于解码使用 base-64 编码的字符串

window.atob(encodedStr)

btoa() 方法用于创建一个 base-64 编码的字符串。

该方法使用 "A-Z", "a-z", "0-9", "+", "/" 和 "=" 字符来编码字符串。

window.btoa(str)

使用方法:推荐

// atob
var s = new Buffer.from("待解码的字符", "base64").toString("binary")
// btoa
var s = new Buffer.from("待编码的字符", "binary").toString("base64")

也可以 npm install btoa-atob

Uint8Array

Uint8Array

  Rannie`