JS(ES6)面试常考/工作常用方法

JS常用方法

1.map()

该方法返回一个新数组,数组中的元素为原数组调用函数后处理过的值

var arr =[1,2,3,4,5]
var arr2 =arr.map((x)=>{return x+1})

2.trim()

**trim()**用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。

trim() 方法不会改变原始字符串。

trim() 方法不适用于 null, undefined, Number 类型。

var str = "       Runoob        ";
alert(str.trim());// "Runoob"

3.split()

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

分割是通过指定的分隔符进行分割

"hello".split("")	//可返回 ["h", "e", "l", "l", "o"]

4.reserve()

reverse() 方法用于颠倒数组中元素的顺序。

var arr = [1,2,3]
arr.reserve() //expected output:[3,2,1]

5.join()

join() 方法用于把数组中的所有元素放入一个字符串。

元素是通过指定的分隔符进行分隔的。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var energy = fruits.join();
//expected output:'Banana,Orange,Apple,Mango'

6.charAt()

charAt() 方法可返回指定位置的字符。

var str="Hello world!"
document.write(str.charAt(1))
//expected output: e

7.fifter()

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

var ages = [32, 33, 16, 40];
var newages =ages.filter((x)=> return x>30)
//newages = [32,33,40]

8.hasOwnproperty

hasOwnProperty() 方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是,是否有指定的键)。

const object1 = {};
object1.property1 = 42;

console.log(object1.hasOwnProperty('property1'));
// expected output: true

9.indexOf

**indexOf()**方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

const beasts = ['ant', 'bison', 'camel', 'duck', 'bison'];

console.log(beasts.indexOf('bison'));
// expected output: 1

10.lastIndexOf

lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var a = fruits.lastIndexOf("Apple");
//output 2

11.forEach()

forEach() 方法會將陣列內的每個元素,皆傳入並執行給定的函式一次。

const array1 = ['a', 'b', 'c'];

array1.forEach(element => console.log(element));

// expected output: "a"
// expected output: "b"
// expected output: "c"

12.slice()

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

**注释:**该方法会返回一个新的数组,不改变原数组

var arr =[1,2,3,4,5,6]
arr.slice(2,3)//output: [3]
arr//output:[1,2,3,4,5,6]

13.splice()

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

**注释:**该方法会改变原始数组。

var arr =[1,2,3,4,5,6]
arr.splice(2,1,9)//output [1,2,9,4,5,6]

14.getPrototypeof()

该**Object.getPrototypeOf()**方法返回[[Prototype]]指定对象的原型(即内部属性的值)。

const prototype1 = {};
const object1 = Object.create(prototype1);

console.log(Object.getPrototypeOf(object1) === prototype1);
// expected output: true

15.apply

apply()函数,第一个参数是 this 的指向对象,第二个参数为调用函数的所有形参,用一个数组表示,并且在调用后立即执行。

var obj ={
	name:'小明',
	a:function (b,c){
		return this.name+b+c
	}
}
var obj2 ={
	name:'小红'
}
obj.a.apply(obj2,[1,2])//output 小红12

16.call

call()函数,第一个参数是 this 的指向对象,剩余的参数为调用函数的形参,每个参数直接用‘,’隔开,并且在调用后立即执行。

var obj ={
	name:'小明',
	a:function (b,c){
		return this.name+b+c
	}
}
var obj2 ={
	name:'小红'
}
obj.a.call(obj2,1,2)//output 小红12

17.bind

bind()函数,第一个参数是 this 的指向对象,剩余的参数为调用函数的形参,每个参数直接用‘,’隔开,调用后返回一个新的函数,不立即执行。

var obj ={
	name:'小明',
	a:function (b,c){
		return this.name+b+c
	}
}
var obj2 ={
	name:'小红'
}
obj.a.bind(obj2,1,2)()//output 小红12

18.toFixed()

把 Number类型 四舍五入为指定小数位数的数字。

var num = 12123.12
num.toFixed()//output 12123

19.toLowerCase()

toLowerCase() 方法用于把字符串转换为小写。

var str = 'SAD12a'
str.toLowerCase()//output 'sad12a'

20.toUpperCase()

toUpperCase()方法用于把字符串转换为大写。

var str = 'SAD12a'
str.toUpperCase()//output 'SAD12A'

21.eval()

JavaScript 中的 eval(…) 函数可以接受一个字符串为参数,并将其中的内容视为好像在书
写时就存在于程序中这个位置的代码。换句话说,可以在你写的代码中用程序生成代码并
运行,就好像代码是写在那个位置的一样。

var str = 'SAD12a'
str.toUpperCase()//output 'SAD12A'
function foo(str, a) {
eval( str ); // 欺骗!
console.log( a, b );
}
var b = 2;
foo( "var b = 3;", 1 ); // 1, 3

eval(…) 调用中的 “var b = 3;” 这段代码会被当作本来就在那里一样来处理。由于那段代
码声明了一个新的变量 b,因此它对已经存在的 foo(…) 的词法作用域进行了修改

本文章持续更新,在内容严谨上和知识广度不断优化以及扩展,希望有收获的朋友们能点赞-持续关注或是揪住鄙人的问题。

最后,祝大家学习愉快,工作顺利!

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值