【JS】前端笔试题总结 ?

1.sort & split & join的用法

【网易2016内推笔试题】
var a = "Hello World".split("").sort().join("");
alert(a); //HWdelllor

知识点:

①sort( )方法:按升序排列数组项。

【说明】

  如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,即按照字符编码的顺序进行排序(空格=32,0=48,A-65,a-97)
  为了实现排序,sort( )方法会调用每个数组项的toString( )转型方法,然后比较得到的字符串,以确定如何排序。

即使数组的每一项都是数值,sort( )方法比较的也是字符串。

例如:
var values = [0,1,5,10,15];
values.sort();
alert(values); //0,1,10,15,5

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

【语法】
stringObject.split(separator,howmany)

separator:必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

例如:
var str="How are you doing today?"
document.write(str.split(" ") + "<br />");
document.write(str.split("") + "<br />")
document.write(str.split(" ",3))

OUT:
How,are,you,doing,today?
H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
How,are,you

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

【语法】
arrayObject.join(separator)

separator:可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。


2.forEach的用法

【网易2016内推笔试题】
var arr = [{a:1},{}];
arr.forEach(function(item,idx){
   
    item.b = idx;
});
console.log(arr); //[{a:1,b:0},{b:1}]

//解析:
forEach对数组的每一项运行item.b = idx;
数组的第0项是{a:1},运行item.b = idx相当于给该项{a:1}添加b属性,值为0;
数组的第1项是{ },运行item.b = idx相当于给该项{ }添加b属性,值为1

知识点:

forEach() 方法:对数组的每一项运行给定函数。没有返回值。

【语法】
Array.forEach(function(item,index,array){
   
    //执行某些操作
}[,作用域对象]);

该方法接收2个参数:要在每一项上运行的函数(可选的)运行该函数的作用域对象——影响this的值

传入这些方法中的函数会接收3个参数
数组项的值item、该项在数组中的位置index和数组对象本身array。


3.闭包

【网易2016内推笔试题】
var a = 
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值