前端经验

Array.prototype.map(func)方法的实现

var arr1 = [ 1 , 2 , 3 , 4 , 5 ];alert(arr1. map (function(element) { return element * 2 ;})); // 输出:[ 2 , 4 , 6 , 8 , 10 ]function MyArray(arr) {this.arr = arr;}MyArray. prototype . map = function(func) {var newArr = []; for (var i =...

前端经验

JavaScript中树的先序、中序、后序遍历

1、先序遍历 function preOrder ( node ) { var nodes = []; if (node != null ) {nodes.push(node);preOrder(node.firstElementChild); if (node.firstElementChild != node.lastElementChild)preOrder(node.lastElementChild);} return nodes; } 2、中...

前端经验

表单元素的readonly和disabled属性

readonly和disabled是用在表单中的两个属性。 相同点: 使用户不能够更改表单域中的内容。 不同点: ① readonly只是使表单元素只读,即不能输入,外观不会变化;而disabled会使表单元素外...

前端经验

JavaScript实现数组全排列、去重、求最大值

1、全排列(递归) function permutation(arr){ if (arr. length == 1 ) return arr; else if (arr. length == 2 ) return [[arr[ 0 ],arr[ 1 ]],[arr[ 1 ],arr[ 0 ]]]; else {var temp = []; for (var i = 0 ; i arr. length ; i++) {var save = arr...

前端经验

JSONP的使用及原理

1、JSONP的诞生过程综述 1) Ajax无法跨域,引起了开发者的思考。 2) 开发者发现, script标签的src属性是可以跨域的,是否可以把跨域服务器写成调用本地的函数,回调数据回来? 3) Java...

前端经验

浅谈JavaScript的浮点数值

浮点数的最高精度是17位小数,但在进行算术运算时其精确度远远不如整数,0.1+0.2的结果不是0.3,而是0.30000000000000004。这个小小的舍入误差会导致无法测定特定的浮点数值,如if (0.1...

前端经验

实现两个div并列的多种方法

方法一:float #div1 { width : 50% ; height : 300px ; background :blue; float :left;} #div2 { width : 50% ; height : 300px ; background :green; float :left;} 方法二:display:table-cell #parent { width : 100% ; display :table;} #div1...