缘由 今天看到一段代码 return Object.assign(func1, func2); 心生疑惑,为什么 Object.assign 的参数可以是函数? 于是有了下面这一堆东西,其实都是老生常谈的东西,可能是岁数大了吧,有些片段都快丢失了,哈哈 prototype js 中 万物皆是对象!!! proto(隐式原型)与 prototype(显式原型) 对象具有属性proto,可称为隐式原型 实例(对象)的 proto === 构造(该实例)函数的 prototype 函数 Functio…
都知道在js中没有办法直接实现方法重载,因为在js中如果定义了多个名称相同,但参数个数不一样的方法,其实只有最后一个方法能被真正调用,其他的方法都被覆盖掉了. 但每一个函数都有一个特殊的参数arguments,利用它可以实现方法的重载. 例如: function Add(firstnumber,sencondnumber) { return firstnumber+sencondnumber; } 只能处理两个参数,如果有多个参数,或者没有参数,一个参数的情况都是处理不了的.如果没有传递参数,则…
由于最近辞职在家,自己的时间相对多一点.所以就根据prototytpeJS的API,结合自己正在看的司徒大神的<javascript框架设计>,整理了下Js中常用一些字符串,数组,函数扩展,一来可以练练手,二来也锻炼下自己的代码能力.由于代码里面的注释自认为已经非常详细,所以就直接贴代码了. 1. 字符串扩展: ;(function() { var method, stringExtends = { /** * 删除字符串开始和结尾的空白 * @returns {string} */ stri…
python练习:编写一个函数isIn,接受两个字符串作为参数,如果一个字符串是另一个字符串的一部分,返回True,否则返回False. 重难点:定义函数的方法.使用str类型的find()函数,可以查找多个字符.第二种方法为把字符串转化为字符队列,然后遍历寻找,但是只可以寻找一个字符. print("————————————————————————————") def isIn(x,y):#def定义函数保留字 v=y.find(x) if v>=0: return True;…
ECMAS-262第5版在定义只有内部采用的特性时,提供了描述了属性特征的几种属性.ECMAScript对象中目前存在的属性描述符主要有两种,数据描述符(数据属性)和存取描述符(访问器属性),数据描述符是一个拥有可写或不可写值的属性.存取描述符是由一对 getter-setter 函数功能来描述的属性. Object的defineProperty和defineProperties这两个方法在js中的重要性十分重要,主要功能就是用来定义或修改这些内部属性,与之相对应的getOwnPropertyD…
前言我前面的文章,写过js中“类”与继承的一些文章.ES5我们可以通过 构造函数 或者 Object.create()等方式来模拟出js中的“类”,当然,对象呢是类的实例化,我们可以通过如下方式创建对象:var haorooms ={};或者var haorooms = new Object()今天主要总结一下Object的一些常用方法.Object.assign()1.可以用作对象的复制var obj = { a: 1 };var copy = Object.assign({}, obj);c…
点击上方"前端自习课"关注,学习起来~ }let b = {    name: "muyiy",    book: {        title: "You Don't Know JS",        price: "45"    }}let c = Object.assign(a, b);console.log(c);// {//     name: "muyiy",//  age: 18,//    …
问题: js中如果同一个onclick绑定了两个js方法问题,即 <li onclick="f1(),f2()"></li> 两个方法f1,f2中都分别有一个ajax请求. 测试发现,经常有一个或两个ajax请求异常,通常是 显示状态码都是200请求成功,但是实际上,浏览器收不到返回参数,这就造成js报错  data is null 等等. 而且,在java后台,往前台写入json数据的方法也经常会报错,比如: flush writer流时出错620015:AP…
在写一些插件的时候,我们会经常遇到所传参数需要合并默认参数,并覆盖相同参数的情况,在jQuery中我们可以使用$.extend(),在原生中要想使用得自己封装, 但自从es6出现了Object.assign,我们就方便多了 var obj = { name:"a", age: 28, gender: "male" }; var defaultObj = { name: "佚名", age: 18 } var res = Object.assign…
在js中字符串转换为数值的方法有三种:转换函数,强制类型转换,隐式转换 1.转换函数 parseInt()   //将字符串转换为整型 parseFloat()  //将字符串转换为浮点型 转换函数在进行类型转换时是可以传入参数的,默认转换为10进制,转换成功后返回的是整数类型的数值. 例:1. parseInt('AB3', 16) //返回结果:2739,表示将字符串转换为16进制的数值 2.parseInt('13', 10) //返回结果:13,表示将字符串转换为10进制的数值 3.pa…