常见非指纹built-in函数
unescape
unescape() _函数_可对通过 escape() 编码的字符串进行解码。
unescape("abcdefg")
'abcdefg'
unescape("\xa2")
'¢'
unescape("Vistit%20W3school%21")
'Vistit W3school!'
Function
Function类似于变量声明
var fun = new Function("a","return a");
// new一个方法 函数传参是a 返回值返回的是这个a
// 相等于
function fun(a){
return a
}
eval
eval 作用是将字符产当作JS的代码执行
eval("alert(111)")
eval('debugger;alert(111)')
Array
制造一个数组 本身是个对象函数
a = new Array
Object
对某个值进行实例化
Object(1111)
// Number {1111} === new Number(1111)
Object("1111")
// String {'1111'}
Object(false)
// Boolean {false}
Date
Date是一个构造函数 也是一个有返回值的函数
Date()
返回的是本地时间
a = new Date()
a.getDate()
// 1 号
a.getDay()
// 3 周三
RegExp
正则 需要new 一个规则
a = new RegExp("n?")
a.exec("asdasdksadnsakldjnsakdj")
indexOf
arry = [
"a",
"b",
"c",
"d",
]
arry.indexOf("a") // 0
arry.indexOf("b") // 1
hasOwnProperty
检测一个属性是否是对象的自有属性
function F(){
this.name = "自有属性"
}
F.prototype.name = "继承属性"
var f = new F()
f
f.hasOwnProperty("name")
decodeURIComponent encodeURI encodeURIComponent
URL编码与解码
encodeURI("干嘛")
'%E5%B9%B2%E5%98%9B'
decodeURI('%E5%B9%B2%E5%98%9B')
'干嘛'
Math .round 、random, parselnt 等强制转换
- Math: 数字函数
- round:Math.rand(0.5) == 1 四舍五入
- random:Math.random() 随机数生成
- parseInt:parseInt(15.55)
shift、pop、push、unshift
shift: 数组移位
pop: 数组删除末尾元素
push: 数组末尾添加
unshift: 数组前部添加
slice、 splice、split、 substring、 substr、 concat
slice : 拆分数组 不基于指针 || 字符串 也可以使用
var array = [1,2,3]
array.slice(0,1)
// [1]
array.slice(0,2)
// (2) [1, 2]
splice:拆分数组 基于指针 影响原数组 || 字符串也可以使用
var array = [1,2,3]
array.splice(0,1)
// [1]
array
// (2) [2, 3]0: 21: 3length: 2[[Prototype]]: Array(0)
split: 把字符串切分成数组
"asdsajhdjsadksaj".split("")
(16) ['a', 's', 'd', 's', 'a', 'j', 'h', 'd', 'j', 's', 'a', 'd', 'k', 's', 'a', 'j']
join:把数组合并成列表
['a', 's', 'd', 's', 'a', 'j', 'h', 'd', 'j', 's', 'a', 'd', 'k', 's', 'a', 'j'].join("")
'asdsajhdjsadksaj'
substring:可以理解为切片
"abcdefg".substring(0,1)
'a'
"abcdefg".substring(0,2)
'ab'
"abcdefg".substring(0,3)
'abc'
"abcdefg".substring(3,0)
'abc'
substr: 但是他不能写反
"abcdefg".substr(0,1)
'a'
"abcdefg".substr(0,2)
'ab'
"abcdefg".substr(0,3)
'abc'
"abcdefg".substr(3,0)
''
concat: 数组合并 两个数组合并
a = new Array(1,2,3)
b = new Array(4,5,6)
a.concat(b)
// (6) [1, 2, 3, 4, 5, 6]
a.concat(a,b)
// (9) [1, 2, 3, 1, 2, 3, 4, 5, 6]
String.fromCharCode、 charCodeAt
String.fromCharCode(): 将 Unicode 编码转为一个字符:
var n = String.fromCharCode(65);
// A
String.fromCharCode():返回在指定的位置的字符的 Unicode 编码。
"A".charCodeAt()
65
[101,118,97,108].map(item=>{
return String.fromCharCode(item)
})
['e', 'v', 'a', 'l']
atob 、btoa、Uint8Array、 ArrayBuffer、 Int32Array、 Int16Array
atob: 把base64解码
btoa: 编码成base64
btoa('123')
'MTIz'
atob('MTIz')
'123'
Uint8Array: 数组类型表示一个 8 位无符号整型数组,创建时内容被初始化为 0
let uint8 = new Uint8Array(2);
uint8[0] = 42;
ArrayBuffer、 Int32Array、 Int16Array都是ES2017的语法 可以自己百度搜
setTimeout 、setlnterval、clearTimeout
setTimeout: 延迟多少秒执行一次
setTimeout(()=>{console.log("你还好吗")}, 3000 )
你还好吗
setlnterval: 每隔多少秒执行一次
a = setInterval(()=>{console.log("你还好吗")},1000)
你还好吗
clearTimeout:清除定时器
clearTimeout(a)
常见非指纹built-in函数的更多相关文章
- 常见的JS手写函数汇总(代码注释、持续更新)
最近在复习面试中常见的JS手写函数,顺便进行代码注释和总结,方便自己回顾也加深记,内容也会陆陆续续进行补充和改善. 一.手写深拷贝 <script> const obj1 = { name ...
- 带有“非简单参数”的函数为什么不能包含 "use strict" 指令
非简单参数就是 ES6 里新加的参数语法,包括:1.默认参数值.2.剩余参数.3.参数解构.本文接下来要讲的就是 ES7 为什么禁止在使用了非简单参数的函数里使用 "use strict&q ...
- C++中的内联成员函数与非内联成员函数
在C++中内联成员函数与非内联成员函数的可以分为两种情况: 1.如果成员函数的声明和定义是在一起的,那么无论有没有写inline这个成员函数都是内联的,如下: using namespace std; ...
- C++_static与非static成员(函数)
static与非static成员(函数) <C++ Primer>第4版399页: 对于特定类类型的全体对象而言,访问一个全局变量有时是必要的.然而,全局变量会破坏封装:对象需要支持特定 ...
- Socket中常见的几个转换函数(htonl,htons,ntohl,ntohs,inet_addr,inet_ntoa)
Socket中常见的几个转换函数(htonl,htons,ntohl,ntohs,inet_addr,inet_ntoa) htonl() htons() ntohl() ntohs()及inet_n ...
- 非ie浏览器必备函数常识
场景描述: 我们都知道IE浏览器和非IE浏览器都有很多功能一样但写法不同,或者各自都有一些自己独特的方法,那么为了保持兼容性和便于编写,我们可以通过这两个方法给非IE浏览器的对象增加自己没有,但IE有 ...
- 文件IO之——阻塞和非阻塞及perror函数
读常规文件是不会阻塞的,不管读多少字节,read一定会在有限的时间内返回.从终端设备或网络读则不一定,如果从终端输入的数据没有换行符,调用read读终端设备就会阻塞,如果网络上没有接收到数据包,调用r ...
- python学习之非空即为真,函数,集合
python基础 非空即真,非零即真 #之前代码:sex = input("请输入性别:") if sex != '': print("输入成功") else: ...
- C++模板编程:如何使非通用的模板函数实现声明和定义分离
我们在编写C++类库时,为了隐藏实现,往往只能忍痛舍弃模版的强大特性.但如果我们只需要有限的几个类型的模版实现,并且不允许用户传入其他类型时,我们就可以将实例化的代码放在cpp文件中实现了.然而,当我 ...
- PHP细节,PHP手册中常见的一句话:该函数是二进制安全的
以下内容转自 http://wuxinjie.github.io/php-02/ 在看PHP手册的时候,经常看到一句话”该函数是二进制安全的”. 二进制安全是什么呢? 他是如何实现的? 二进制安全是什 ...
随机推荐
- Istio(五):使用服务网格Istio进行流量路由
目录 一.模块概览 二.系统环境 三.简单路由 3.1 简单路由 四.Subset和DestinationRule 4.1 Subset 和 DestinationRule 4.2 Destinati ...
- iptables介绍和基本使用
iptables 防火墙是什么 防火墙好比一堵真的墙,能够隔绝些什么,保护些什么. 防火墙的本义是指古代构筑和使用木制结构房屋的时候,为防止火灾的发生和蔓延,人们将坚固的石块堆砌在房屋周围作为屏障,这 ...
- 在FreeSQL中实现「触发器」和软删除功能
前言 最近做新项目,技术栈 AspNetCore + FreeSQL 这个ORM真的好用,文档也很完善,这里记录一下两个有关「触发器」的功能实现 修改实体时记录更新时间 模型代码 我的模型都是基于这个 ...
- Java集合精选常见面试题
前言 博主只是这篇文章的搬运工,为了加强记忆自己梳理了一遍并扩展了部分内容. 集合拓展链接:集合概述&集合之Collection接口 - 至安 - 博客园 (cnblogs.com) Java ...
- (线段树) P4588 数学计算
小豆现在有一个数 x,初始值为 1.小豆有 QQ 次操作,操作有两种类型: 1 m:将 x变为 x × m,并输出 x mod M 2 pos:将 x 变为 x 除以第 pos次操作所乘的数(保证第 ...
- 高性能MySQL(第4版) 第一章 MySQL架构 读书笔记
这本书去年11月出的,今年中文版也出了,并且直接上了微信读书,之后有空就读一读,分享下读书笔记~ 原文内容比较充实,建议有时间可以读一下原文. 第一章主要是个概览. MySQL的逻辑架构 默认情况下, ...
- 【题解】P7860 [COCI2015-2016#2] ARTUR
题面传送门 好题. 主要思路和另一位巨佬差不多,详细讲一下判断的部分. 解决思路: 首先考虑本题与拓扑排序有和关系.可以想到,某些棍子的先后移动顺序是有限制的.比如: 这里红色的必须比蓝色的先移动,因 ...
- Kubernetes核心技术Pod
Kubernetes核心技术Pod Pod概述 Pod是K8S系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在K8S上运行容器化应用的资源对象,其它的资源对象 ...
- adb shell 全局查找文件
借助busybox 由于安卓手机没有 find 命令,所以我们需要借助busybox中的find命令 busybox 下载地址 这里我下载的是 busybox-armv6l, 一般这个版本就可以,下载 ...
- 【Java并发入门】03 互斥锁(上):解决原子性问题
原子性问题的源头是线程切换 Q:如果禁用 CPU 线程切换是不是就解决这个问题了? A:单核 CPU 可行,但到了多核 CPU 的时候,有可能是不同的核在处理同一个变量,即便不切换线程,也有问题. 所 ...