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

编程开发
31
Javascript
js
面向对象

在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);
}
};
//后期也可以扩展属性
javascript脚本 IconFont图标批量加入购物车
解决html2canvas在 iOS15系统浏览器中截图后自动刷新页面问题
jquery 实现网页页面内容自适应窗口的宽度
javascript 本地会话缓存[localStorage、sessionStorage]的使用例子
javascript转换 C# DateTime为字符串显示格式
Javascript限制网页仅在微信浏览器中打开
JavaScript、JQuery屏蔽网页右键菜单及禁止复制功能的实现
一段判断浏览器是否打开F12调试模式然后关闭网页的JS代码
使用async/await语法es5模式下报错regeneratorRuntime is not defined
网页前端js使用jquery.qrcode插件实现生成带图标的二维码
暂无相关内容...
js网页添加悬浮二次元卡通公仔特效的实现源码下载
一款类似PhotoShop的图像处理js插件miniPaint.js
免责声明 部分转载分享内容若侵犯您的权益,还请 邮件联系 侵删