20160304
文章目录
javascript的数组排序函数中参数的返回值
>
arrayObject.sort(sortby)
参数 描述
sortby 可选。规定排序顺序。必须是函数。
返回值
对数组的引用。请注意,数组在原数组上进行排序,不生成副本。
说明
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
10行 JavaScript 实现文本编辑器
- contenteditable
- document.execCommand
- getSelection().toString() 获取当前选中文字内容
- 激活部分只能是a或者button标签,不然会使得编辑区域失去焦点
- 参考示例
- https://segmentfault.com/a/1190000004374508
- http://www.zhangxinxu.com/wordpress/2011/04/js-range-html%E6%96%87%E6%A1%A3%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%E9%80%89%E4%B8%AD%E3%80%81%E5%BA%93%E5%8F%8A%E5%BA%94%E7%94%A8%E4%BB%8B%E7%BB%8D/
- 怎样暂存选中区域(比如要插入链接,弹窗给用户输入链接,弹窗完毕,回到编辑区,恢复之前选中区域,添加链接)123456789101112131415161718// 暂存选区var selection = document.getSelection(),range = selection.getRangeAt(0);var temp = {startOffset: range.startOffset,endOffset: range.endOffset,endContainer: range.endContainer,startContainer: range.startContainer};// 设置选区range.setStart(temp.startContainer, temp.startOffset);range.setEnd(temp.endContainer, temp.endOffset);document.getSelection().addRange(range);编辑器失去焦点时不用暂存选区里的数据,直接把选区保存下来就可以了。。var range = document.getSelection().getRangeAt(0); //注意有可能没有任何选区存在// 重新添加选区document.getSelection().addRange(range);
arguments参数是否可以更改
平时arguments和平常变量一样可以修改,修改后对应变量也会被修改。 严格模式下arguments列表修改不会报错,但是修改后arguments列表值会改变,参数中的值不会改变。另外严格模式下不能为arguments直接赋值。
|
|
快速排序 dev/quicksort.js
git clone时提示ssl错误
|
|
ie9 @media query 不起作用
增加meta标签在所有的meta之前