JS 面向对象编程:因为不能完整支持面向对象3大特性,并不是面向对象的编程语言!

45
补充展位
Pages_Weblog_Get#8a483a46-ab65-4572-b450-b4b5337a9d7e
文章摘要
此内容由人工摘要内容,并由AI根据文章内容进行润色
暂无内容

在JS对象里面没有封装概念! 因为不能完整支持面向对象3大特性, 所以JS并不是面向对象的编程语言!

如何创建JS对象

JSON语法声明对象(直接量声明对象)

var object= {};

使用 Object 创建对象

 var object= new Object();

//JS对象可以后期添加属性 例子

var object_0= {};
object_0.name = "Tom";
var object_1= new Object();
object_1.name0 = "TOM";
object_1.name1 = "小明";

对象特点: new Object() 和 JSON 语法创建的对象时一样的! JSON语法更简洁方便, 相对容易使用一些 生成对象后可以随时添加属性 添加方式如下 [对象].[属性] = [属性值] 参考: object_1.name1 = "小明"; 当属性不存在时, 获取到的值是 undefined 在判断undefined的时候 可以类比 bool类型, 利用这个特点可以用于检测属性是否存在

if(!object.sex){
      console.log('没有sex属性');
}
if(obj.name){
console.log('姓名:'+obj.name); 

可以随时删除对象的属性

delete 对象.属性;
JS Object在本质是一个散列表!
为对象添加属性, 本质是添加了 key:value, key是属性名, value是属性值.
访问对象属性, 本质是get(key)
JS 对象如何添加方法
js对象添加的方法, 本质上也是一个属性, 是一个值是函数对象的属性!

var obj = ;
obj.name = "Tom";
obj.people= function(){
console.log(this.name);

调用people方法与访问people属性

obj.people();//调用方法 返回方法值 obj.people; 访问属性的值, 返回函数对象 可以像属性一样删除方法

delete obj.people 和属性一样,方法也是可以 修改的!


obj.people=function(){
    console.log(this.name);
};
obj.people=function(){
    console.log('Hello World!');
};
JS方法没有重载的概念!!  所以最近添加的会覆盖原有方法

obj.append= function(x, y){
return x+y;
}
obj.append= function(x, y, z){
    return x+y+z;
}
使用JSON直接声明属性和方法
var obj = {
name:'Tom', 
sex:'女', 
:function(){
console.log(this.name);
}
};
//后期也可以扩展属性
补充展位 Pages_Weblog_Get#0
补充展位 Pages_Weblog_Get#1
补充展位 Pages_Weblog_Get#2
专题推荐
暂无内容
补充展位 Pages_Weblog_Get#3