如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
这个函数很明显,return的是随机数,按照您的想法应该是生成的随机数根据三目运算之后排列好输出,对不对,但是这个函数的特性是根据字母来排序的,所以他是不可以排序这样的数据的。
明白没?
希望可以帮助到您
第四行:使用数组的字面量形式[]。第七行:document.write和eval作用相同,尽量在避免使用。建议用document.createElement(), element.appendChild()来代替。
第八行:永远不要使用for in 来遍历数组。它会将原型链上面的属性一起遍历。请改用for(var i = 0i<arr.lengthi++)。非要用for in的话,用hasOwnProperty方法判断一下是本身的属性,而不是原型链上面的属性。
第八行:你的代码类似这个吧for(i = 0i<arr.lengthi++),定义i的时候没有加var,定义了一个全局变量i。for循环定义索引变量的时候记得加一个var或者let。