javaScript 工作必知(七) 对象继承

对象继承inherit

        var o = { r: 1 };
        var c = function f() {

        };
        c.prototype = o;
        c.r = 3;
        alert(o.r);//被继承的属性值未发生改变。
        alert(c.r);//c中r覆盖了o中的属性。

       如何调用o中的r属性呢。

         var o = { r: 1 };
        var c = function f() {

        };
        c.prototype = o;

        alert(o.r);//1 被继承的属性值未发生改变。
        alert(c.r);//查询r属性,返回undefined值。
        alert(c.prototype.r);// 1 c中r覆盖了o中的属性。

     应该使用原型进行调用。

时间: 2024-10-26 14:45:20

javaScript 工作必知(七) 对象继承的相关文章

javaScript 工作必知(十) call apply bind

call  每个func 都会继承call apply等方法. function print(mesage) { console.log(mesage); return mesage; } print.call(this, "cnblogs");//cnblogs call(thisAgr,agr1,agr2...) ,call方法第一个传递一个context上下文.后面是参数的个数. apply apply(thisAgr,[agr1,agr2]),apply方法和call的用法一样

javascript 工作必知(四) 类型转换

string和number boolean javascript 类型会根据赋值的进行转成相应的类型. var str = ""; alert(typeof (str));//string str = 5; alert(typeof (str));//number var sum = str + 5; //+编程两个数字相加 alert(sum);//10       这一种比较明显,一眼就可以计算出其值.但是请看下面这种转换 var sum = "7" + &qu

javaScript 工作必知(六) delete in instanceof

in in 判断  左边 的字符串或者能转换成字符串的是否属于 右边 的属性. var data = { x: 1, y: 4 };//定义了直接对象 alert("x" in data);//true ,x 是data 的一个属性 alert(1 in data);//false ,1 是data的属性值. var arr = [4, 5, 7];//定义了直接数组对象 alert(0 in arr);//true ,arr 数组的index包括0,1,2,0 是他的一个[0]属性.

javaScript 工作必知(三) String .的方法从何而来?

String 我们知道javascript 包括:number,string,boolean,null,undefined 基本类型和Object 类型. 在我的认知中,方法属性应该是对象才可以具有的. var str="hello,world"; var s=str.subString(1,4);//ell alert(typeof(str)+":"+typeof(s));//string:string           从上面的返回类型来看,str是strin

javaScript 工作必知(八) 属性的特性 值、写、枚举、可配置

属性的特性 每个对象都拥有属性,属性具有哪些特性呢? 1.属性具有值.  2.属性是否是可写的.            3.是否是可枚举的.            4.是否是可配置的.   "use strict";//使用严格模式 var descriptor = Object.getOwnPropertyDescriptor({ x: 1 }, "x");//获取匿名对象的值 alert("value:" + descriptor.value

javaScript 工作必知(五) eval 的使用

eval eval(parse) parse :里面跟参数字符串,我们知道执行javascript 会编译执行,    改变全局变量的值: var x = 2; //定义的全局变量 alert(x);//2 var g = eval("x=3"); //eval 会根据当前上下文解析x alert(x);//3    在全局作用域引用eval,改变全局作用域的值,不改变局部作用域的值 var g = eval; //全局引用eval var x = "global"

javaScript 工作必知(二) null 和undefined

null null 表示个“空” , 使用typeof (null) ;//Object ; 说明他是一个特殊的对象. null 类型只自己唯一个成员.他是不包含属性和方法的. undefined undefined 同样也是表示"空", 使用typeof (undefined) ;//undefined ;说明他是undefined类型的. undefined 类型只包含自己一个成员,他不包含属性和方法的. summary null 和 undefined 在莫种意义上可以一样 ,比

JavaScript 工作必知(九)function 实参和形参

大纲 Function Caller 返回函数调用者 Callee 调用自身 function 函数格式 function getPrototyNames(o,/*optional*/ a) { a = a || []; for(var p in o) { a.push(p); } return a; } caller func.caller 返回函数调用者 function callfunc() { if(callfunc.caller) { alert(callfunc.caller.toS

高效javascript编程必知的5个数组方法

本文和大家分享的主要是javascript中关于数组最重要的5个方法,一起来看看吧,希望对大家学习javascript有所帮助. Array.forEach() .forEach() 方法能够方便的让你 遍历数组里的每个元素 ,你可以在回调函数里对每个元素进行操作..forEach() 方法没有返回值,你不需要在回调函数里写 return ,这是无意义的. var animals = ['dog', 'cat', 'mouse']; animals.forEach(function(item){