36)
Posted xiaotaiyangye
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了36)相关的知识,希望对你有一定的参考价值。
解决函数内this指向:
1,可以在函数外提前声明变量 _this/that = this
2,通过apply()和call()来修改函数内的this指向
二者区别:
用法是一样的,参数形式不一样 fn.call(obj,ab) fn.apply(obj,[a,b])
二者代表的是将函数内的this换成obj之后,然后把fn调用
3,bind修改函数内的this:
fn.bind(obj,a,b)只是替换了this,但不调用fn,返回的是函数
fn.bind(obj,a,b)()
找出数组中的最大项,最小项:
var arr=【45,26,15】
1,借助math中的max
var max=Math.max.apply(null,arr)
2,借助数组中的sort()
var fn=function(a,b){
return a-b //从小到大
return b-a //从大到小
}
var s=arr.sort(fn)
console.log(s[s.length-1])
3,假设法:比较法
var max=arr【0】
var num=null;
for(var i=1;i<arr.length;i++){
if(max<arr.length;i++){
num=max;
max=arr[i]
arr[i]=num;
}
}
console.log(max)
对数组排序的方法:
1,借助array中sort
var fn=function(a,b){
return a-b //从小到大
return b-a //从大到小
}
2,冒泡排序:
var arr=[11,24,36,56,2]
var num=null;
for(var i=arr.length-1;i>=0;i--){
for(var j=0;i<=j;j++){
if(arr[i]>arr[i+1]){
num=arr[i]
arr[i]=arr[i+1]
arr[i+1]=num
}
}
}
Math数值对象:
js自带的类:regexp,number,Boolean,function,math,date,array,string
math类,math对象,研究出一堆的属性和方法:
math.pi 180° 弧度的π
math.sqrt(16) 4 返回平方根
math.abs(x) 返回的绝对值
math.ceil(x) 返回x的上舍入
math.floor(x) 返回x的下舍入
math.max(a,b,c) 返回abc中的最大值,abc必须是数字
math.min(a,b,c) 返回abc中的最小值,abc必须是数字
math.random() 返回0-1之间的随机数
math.sin(x) 返回x的正弦值
math.cos(x) 返回x的余弦值
math.tan(x) 返回x的正切值
以上是关于36)的主要内容,如果未能解决你的问题,请参考以下文章