浅析JavaScript中的常用算法与函数


Posted in Javascript onNovember 21, 2013

代码使用方法:

0001:
判断一个计算结果是不是无穷大:if(isFinite(999999999*999999999) == true)
----------------------------------------------------------------------------------------------------
0002:
判断是不是数字:if(isNaN("Blue") == true),不是数字则为true,是数字则为false。
----------------------------------------------------------------------------------------------------
0003:
数字的进制转换:
var num = 10;
alert(num.toString()) + "<br>";//十进制
alert(num.toString(2)) + "<br>";//二进制
alert(num.toString(8)) + "<br>";//八进制
alert(num.toString(16)) + "<br>";//十六进制
----------------------------------------------------------------------------------------------------
0004:
将字符串类型转换为数字类型:注意,parseFloat没有进制参数可以选择,都当作十进制处理
var str = "10";
alert(parseInt(str,10));//字符串被当作十进制处理
alert(parseInt(str,2));//字符串被当作二进制处理
----------------------------------------------------------------------------------------------------
0005:
强制类型转换:
var str = "10";
var num = new Number(str);
----------------------------------------------------------------------------------------------------
0006:
Object类的基本属性和方法:所有类都继承自Object,因此都有这些属性和方法。
属性:
●Constructor:对创建对象的函数的引用。指向构造函数。
●Prototype:对该对象的对象原型的引用。
方法:
●HasOwnProperty(property):判断对象是不是有某个属性。
●IsPrototypeOf(aobject):判断该对象是不是另一个对象的原型。
●PrototypeIsEnumerable(protype):判断属性是否可以用for...in语句枚举。
●ToString()
●ValueOf()
----------------------------------------------------------------------------------------------------
0007:
声明数组的几种方法:
var array1 = new Array();
var array2 = new Array("Blue","Red","Black");
var array3 = ["Blue","Red","Black"];
----------------------------------------------------------------------------------------------------
0008:
创建日期类型的方法:var myDate = new Date(Date.parse("2007/1/2"));
----------------------------------------------------------------------------------------------------
0009:
URL的编码和解码:
var url = new String("http://www.qpsh.com?name=smartkernel");
//编码:将非标准字符全部编码
var enUrl = encodeURIComponent(url);//encodeURI(url);
//解码:转换为原始形式
var deUrl = decodeURIComponent(enUrl);//decodeURI(enUrl);
----------------------------------------------------------------------------------------------------
0010:
ASP.Net中的编码和解码:
string url = "http://www.126.com?name=smartkernel";
string enUrl = this.Server.HtmlEncode(url);
string deUrl = this.Server.HtmlDecode(enUrl);
----------------------------------------------------------------------------------------------------
0011:
静态方法:JavaScript的静态函数,就是声明给构造函数的函数

function Person()
{
}
Person.say = function(msg)
{
alert(msg);
}
Person.say("你好");

0012:
创建一个对象:
function Person(name,age)
{
Person.prototype.Name = name;
Person.prototype.Age = age;
//this.Name = name;
//this.Age = age;
}
Person.prototype.say = function()
{
alert(this.Name + "|" + this.Age);
}
var aPerson = new Person("张三",23);
aPerson.say();

0013:
StringBuilder的创建:
function StringBuilder()
{
this.arrayData = new Array();
}
StringBuilder.prototype.append = function(str)
{
this.arrayData.push(str);
}
StringBuilder.prototype.toString = function()
{
return this.arrayData.join("");
}
var aStringBuilder = new StringBuilder();
aStringBuilder.append("世界");
aStringBuilder.append("你好");
alert(aStringBuilder.toString());

0014:
继承的实现:
function Person(name)
{
this.Name = name;
this.sayName = function()
{
alert(this.Name);
}
}
function MyPerson(name,age)
{
this.ctorFun = Person;
this.ctorFun(name);
delete this.ctorFun;
this.Age = age;
this.sayAge = function()
{
alert(this.Age);
}
this.say = function()
{
alert(this.Name + "|" + this.Age);
}
}
var aMyPerson = new MyPerson("张三",25);
aMyPerson.sayName();
aMyPerson.sayAge();
aMyPerson.say();

0015:
继承的实现:
function Person(name)
{
this.Name = name;
this.sayName = function()
{
alert(this.Name);
}
}
function MyPerson(name,age)
{
Person.call(this,name);//或者Person.apply(this,new Array(name));
this.Age = age;
this.sayAge = function()
{
alert(this.Age);
}
this.say = function()
{
alert(this.Name + "|" + this.Age);
}
}
var aMyPerson = new MyPerson("张三",25);
aMyPerson.sayName();
aMyPerson.sayAge();
aMyPerson.say();

0016:
多重继承:
function Person1(name)
{
this.Name = name;
this.sayName = function()
{
alert(this.Name);
}
}
function Person2(sex)
{
this.Sex = sex;
this.saySex = function()
{
alert(this.sex);
}
}
function MyPerson(name,age,sex)
{
Person1.call(this,name);
Person2.call(this,sex);
this.Age = age;
this.sayAge = function()
{
alert(this.Age);
}
this.say = function()
{
alert(this.Name + "|" + this.Age + "|" + this.Sex);
}
}
var aMyPerson = new MyPerson("张三",25,"男");
aMyPerson.say();

0017:
继承的实现:原型链方式,不支持有参数的构造函数和多重继承
function Person()
{
}
function MyPerson()
{
}
MyPerson.prototype = new Person();//不能有参数

0018:
合理的继承机制是混合使用以上的几种方式:
function Person(name)
{
this.Name = name;
this.sayName = function()
{
alert(this.Name);
}
}
function MyPerson(name,age)
{
Person.call(this,name);//或者Person.apply(this,new Array(name));
this.Age = age;
this.sayAge = function()
{
alert(this.Age);
}
this.say = function()
{
alert(this.Name + "|" + this.Age);
}
}
MyPerson.prototype = new Person();
var aMyPerson = new MyPerson("张三",25);
aMyPerson.sayName();
aMyPerson.sayAge();
aMyPerson.say();

0019:
错误处理:
<head>
<script type="text/Javascript">
window.onerror = function(msg,url,line)
{
var err = "错误信息:" + msg + "。/n" + "错误地址:" + url + "。/n" + "错误行数:" + line + "。/n";
alert(err);
}
</script>
Javascript 相关文章推荐
Ajax+Json 级联菜单实现代码
Oct 27 Javascript
JavaScript中逗号运算符介绍及使用示例
Mar 13 Javascript
jQueryUI中的datepicker使用方法详解
May 25 Javascript
jQuery验证表单格式的使用方法
Jan 10 Javascript
基于jQuery实现弹幕APP
Feb 10 Javascript
js断点调试经验分享
Dec 08 Javascript
angularJS1 url中携带参数的获取方法
Oct 09 Javascript
详解bootstrap-fileinput文件上传控件的亲身实践
Mar 21 Javascript
关于vue-cli 3配置打包优化要点(推荐)
Apr 22 Javascript
vue fetch中的.then()的正确使用方法
Apr 17 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
Jul 14 Javascript
javascript canvas实现简易时钟例子
Sep 05 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
Nov 20 #Javascript
浅谈checkbox的一些操作(实战经验)
Nov 20 #Javascript
JS 去除Array中的null值示例代码
Nov 20 #Javascript
document.getElementById获取控件对象为空的解决方法
Nov 20 #Javascript
jquery html动态生成select标签出问题的解决方法
Nov 20 #Javascript
js数组转json并在后台对其解析具体实现
Nov 20 #Javascript
javascript 循环调用示例介绍
Nov 20 #Javascript
You might like
php函数指定默认值方法的小例子
2013/12/04 PHP
PHP实现即时输出、实时输出内容方法
2015/05/27 PHP
php对象工厂类完整示例
2018/08/09 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
2019/07/03 PHP
Yii框架响应组件用法实例分析
2019/09/04 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
2020/01/02 PHP
google地图的路线实现代码
2009/08/20 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
JavaScript中的lastIndexOf()方法使用详解
2015/06/06 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
使用Node.js为其他程序编写扩展的基本方法
2015/06/23 Javascript
js实现自定义进度条效果
2017/03/15 Javascript
JS中实现一个下载进度条及播放进度条的代码
2019/06/10 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
2019/08/17 Javascript
浅谈如何优雅处理JavaScript异步错误
2019/11/12 Javascript
JavaScript函数重载操作实例浅析
2020/05/02 Javascript
haskell实现多线程服务器实例代码
2013/11/26 Python
简单谈谈python中的多进程
2016/11/06 Python
详谈Pandas中iloc和loc以及ix的区别
2018/06/08 Python
python使用turtle绘制分形树
2018/06/22 Python
如何使用Python 打印各种三角形
2019/06/28 Python
python基于property()函数定义属性
2020/01/22 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
python基于Kivy写一个图形桌面时钟程序
2021/01/28 Python
女子锻炼服装和瑜伽服装:Splits59
2019/03/04 全球购物
巴西箱包、背包、钱包和旅行配件购物网站:Inovathi
2019/12/14 全球购物
英国门销售网站:Green Tree Doors
2020/01/07 全球购物
在购买印度民族服饰:Soch
2020/09/15 全球购物
涉外经济法专业毕业生推荐信
2013/11/24 职场文书
2014年自我评价
2014/01/04 职场文书
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers