keep_on _coding——js_good_parts
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<script>
function add(a,b){
return Number(a) + Number(b);
};
var arr = [1,2,3,4,5,6,7,8,9,10];
Array.prototype.reduce_self = function(f,value){
var i; for(i = 0; i<this.length; i+=1){
value = f( this[i] , value )
};
return value;
}; Array.prototype.dim = function(n,init){
var a = [] , i;
for(i = 0; i < n; i+=1){
a[i] = init
};
return a;
}; Array.prototype.matrix = function(m,n,initial){
var a, i, j, mat = [];
for(i=0; i<m; i+=1){
a = [];
for(j=0; j<n; j++){
a[j] = initial;
};
mat[i] = a;
}
return mat;
}; //RegExp
var parse_url = /^(?:([a-zA-z]+):)?(\/{0,3})([0-9.\-a-zA-Z]+)(?::(\d+))?/;
var url = "http://www.chenqihao.com:80/goodparts?q#fragment";
var result = parse_url.exec(url); var names = ['url','scheme','slash','host','port'];
var blanks = ' ', i ;
for(i=0; i<names.length; i+=1){
document.writeln(names[i] + ':' + result[i] + '<br>')
}; //排序
var arr = [2,1,3,66,10,200,28,29];
arr.sort();
console.log(arr)
arr.sort(function(a,b){
if(a<b){
return 1
}else{
return -1
}
});
console.log(arr); var arr1 = [10,29,'ddd',100,'bbd',29,0,18,'a',18,'b'];
arr1.sort(function(a,b){
if( a === b){
return 0;
}
if( typeof a == 'number' && typeof b == 'number' ){
if(a < b){return -1}else{ return 1};
};
if( typeof a < typeof b){
return -1
};
}); var by = function(name){
return function(a,b){
var c,d;
if(typeof a === 'object' && typeof b === 'object' && a && b){
c = a [name],d = b[name];
if(a === b){
return 0
};
if( typeof a === typeof b ){
return a < b ? -1 : 1;
};
return typeof a < typeof b ? -1 : 1;
};
};
};
var obj = [
{f : 'C'},
{f : 'E'},
{f : 'B'},
{f : 'A'},
{f : 'S'}
];
obj.sort( by('f') );
console.log( JSON.stringify(obj) ); var arr = ['a','b','c','d'];
arr._unshift = function(){
this.splice.apply(this,[0,0].concat(Array.prototype.slice.call(arguments)))
};
//Array.prototype.slice.call(arguments) 可以将类数组转换为真数组 Function.prototype._bind = function(that){
var method = this,
slice = Array.prototype.slice,
args = slice.apply(arguments,[1]);
return function(){
method.apply( that,args.concat(slice.apply(arguments,[0])) )
};
}; //下面这个东东,经常服务器返回东西经过编码了,用这个在转下;反正转来转去的
/* 主要是这四个字符 < > & " */
String.prototype.entityfy = function(){
var charactor = {
'<' : '<',
'>' : '>',
'&' : '&',
'"' : '"'
};
var _this = this;
return (function(){
return _this.replace(/[<>&"]/g,function(a){
return charactor[a]
})
})();
};
console.log( '<>&"'.entityfy() )
</script>
</body>
</html>
keep_on _coding——js_good_parts的更多相关文章
- 使用etree.HTML的编码问题
title: 使用etree.HTML的编码问题 date: 2015-10-07 17:56:47 categories: [Python] tags: [Python, lxml, Xpath] ...
- Django
一.Django 简介 Django 是一个由 Python 写成的开放源代码的 Web 应用框架.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是 CMS(内容管理系统) ...
- 21-Python-Django进阶补充篇
1. 路由部分补充 1.1 默认值 url: url(r'^index/', views.index, {'name': 'root'}), views: def index(request,name ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Django ORM、一对一、一对多、多对多、详解
上篇博客也提到这些知识点,可能大家还是不太清楚,这篇博客为大家详细讲解ORM中的几个知识点 1.1首先我们先看一个小案例: #_*_coding:utf-8_*_ from django.db imp ...
- 冰冻三尺非一日之寒--web框架Django(翻页、cookie)
第二十一章 cookie 1.获取Cookie: request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, ...
- Day5-python基础之函数(二)
生成器 迭代器 装饰器 模块 来个需求,一个列表中所有元素都+1 1.最容易想到的方法 for循环,找列表索引,对应每个值+1 list_old = [1,2,3,4,5,6,7,8,9] for ...
- Python Day21
Cookie 1.获取Cookie: request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, salt=' ...
- Python Day20
Django 表操作 1.基本操作 # 增 # # models.Tb1.objects.create(c1='xx', c2='oo') 增加一条数据,可以接受字典类型数据 **kwargs # o ...
随机推荐
- CSS 属性 :before && :after的用法,伪类和伪元素的区别
一::before && :after的用法 :before 如同对伪元素的名称一样,:before 是用来给指定的元素的内容前面插入新的内容.举例说明: .before:before ...
- 数据结构Java实现06----中缀表达式转换为后缀表达式
本文主要内容: 表达式的三种形式 中缀表达式与后缀表达式转换算法 一.表达式的三种形式: 中缀表达式:运算符放在两个运算对象中间,如:(2+1)*3.我们从小做数学题时,一直使用的就是中缀表达式. 后 ...
- 每日一语:What is he getting at?
What is he getting at? 他讲这话是什么意思? 2015-1-12
- 如何修改myeclipse 内存,eclipse.ini中各个参数的作用。
修改MyEclipse/eclipse文件夹中配置文件eclipse.ini中的内存分配就哦了 =================================== 一般的ini文件设置主要包括以下 ...
- POJ 1141 Brackets Sequence
Brackets Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 29502 Accepted: 840 ...
- ActionBar在Android2.x的实现,类似新版微信界面。
ActionBar完美兼容Android4.x的机型,虽然现在Android2.x的系统越来越少,还有有一部分人使用的仍是2.x的系统,所以我们还得考虑着兼容性问题. 对比图: Test例子与微信的对 ...
- C#脚本引擎 CS-Script 之(一)——初识
最近在做新产品,这个产品需要满足不同项目对于系统的定制性数据处理需求,比如有的要统计一段时间内某开关打开关闭了多少次,有的要统计一段时间内空调的使用率,有的希望根据温度来控制空调的开还是关,有的则是希 ...
- [CareerCup] 6.1 Find Heavy Bottle 寻找重瓶子
6.1 You have 20 bottles of pills. 19 bottles have 1.0 gram pills, but one has pills of weight 1.1 gr ...
- Jenkins进阶系列之——08Jenkins纳入版本控制
2014-07-25:更新shell脚本 2014-06-05:更新shell脚本 2014-01-09:更新shell脚本,修改Jenkins文件删除后不能自动从版本控制删除的bug 是不是有过这种 ...
- Jmeter测试webocket协议
Jmeter本身不支持websocket协议的,所以需要安装第三方的插件还有6个依赖包. 首先,我们需要准备Jmeter的WebSocket协议的支持插件: JMeterWebSocketSample ...