当前位置: 首页>編程日記>正文

JS对象定义和基本方法

JS对象定义和基本方法

  • js如何定义对象
    用var关键字
    JavaScript用一个{…}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,,如果加了,有的浏览器(如低版本的IE)将报错。
    eg:
var 对象名字={
属性
方法
<script>var xiaoming={name:"worker",age:23,salary:7000,};alert(worker.salary+worker.name+worker.age);</script>
};
  • 总结:
    1、记得花括号后面的分号
    2、每个属性用逗号隔开
  • 访问属性是通过.操作符完成的,但这要求属性名必须是一个有效的变量名。如果属性名包含特殊字符,就必须用’'括起来:
var xiaohong = { name: '小红','middle-school': 'No.1 Middle School' }; 

xiaohong的属性名middle-school不是一个有效的变量,就需要用’'括起来。访问这个属性也无法使用.操作符,必须用[‘xxx’]来访问:

xiaohong['middle-school']; // 'No.1 Middle School'
xiaohong['name']; // '小红'
xiaohong.name; // '小红'

实际上JavaScript对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型.
如果访问一个不存在的属性会返回什么呢?JavaScript规定,访问不存在的属性不报错,而是返回undefined:


var xiaoming = {name: '小明'
};

console.log(xiaoming.name);
console.log(xiaoming.age); // undefined

由于js是对象是一个动态类型,你可以自由的给对象添加或删除属性:

eg:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>var worker={name:"xiaoming",age:23,salary:7000,'middle-school': 'No.1 Middle School'};// 动态添加属性worker.time;worker.time=20;worker.weight=100;// 删除属性delete worker.weight;// alert(worker.salary+worker.name+worker.age);document.write(worker.time+"<br />");document.write(worker.weight+"<br />");document.write(worker.name+"<br />");document.write(worker['name']+"<br />");document.write(worker['middle-school']+"<br />");document.write(worker.mother);</script>
</head>
<body>	
</body>
</html>
  • 结果:

20
undefined
xiaoming
xiaoming
No.1 Middle School
undefined

  • 如何判断属性是否在对象里面:用in
    格式:
    ‘属性’ in 对象名;是返回true否返回false
    不过要小心,如果in判断一个属性存在,这个属性不一定是本身的,它可能是继承得到的:
  • 若要判断是否是本身的有办法
    要判断一个属性是否是xiaoming自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法:
  • worker.hasOwnOperty(‘name’);
  • 如何遍历对象用in
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>var worker={name:"xiaoming",age:23,salary:7000,'middle-school': 'No.1 Middle School'};// 动态添加属性worker.time;worker.time=20;worker.weight=100;// 删除属性delete worker.weight;delete worker['weight'];// alert(worker.salary+worker.name+worker.age);document.write(worker.time+"<br />");document.write(worker.weight+"<br />");document.write(worker.name+"<br />");document.write(worker['name']+"<br />");document.write(worker['middle-school']+"<br />");document.write(worker.mother);// 如何遍历对象for(var k in worker){document.write(k+':'+worker[k]);}</script>
</head>
<body>	
</body>
</html>

结果:20
undefined
xiaoming
xiaoming
No.1 Middle School
undefinedname:xiaomingage:23salary:7000middle-school:No.1 Middle Schooltime:20


https://www.fengoutiyan.com/post/14644.html

相关文章:

  • 对象的定义是什么
  • js中的对象
  • js定义一个对象
  • 什么是类什么是对象
  • js对象类型
  • js对象的方法有哪些
  • JS中编写小车对象
  • js对象去重
  • 鏡像模式如何設置在哪,圖片鏡像操作
  • 什么軟件可以把圖片鏡像翻轉,C#圖片處理 解決左右鏡像相反(旋轉圖片)
  • 手機照片鏡像翻轉,C#圖像鏡像
  • 視頻鏡像翻轉軟件,python圖片鏡像翻轉_python中鏡像實現方法
  • 什么軟件可以把圖片鏡像翻轉,利用PS實現圖片的鏡像處理
  • 照片鏡像翻轉app,java實現圖片鏡像翻轉
  • 什么軟件可以把圖片鏡像翻轉,python圖片鏡像翻轉_python圖像處理之鏡像實現方法
  • matlab下載,matlab如何鏡像處理圖片,matlab實現圖像鏡像
  • 圖片鏡像翻轉,MATLAB:鏡像圖片
  • 鏡像翻轉圖片的軟件,圖像處理:實現圖片鏡像(基于python)
  • canvas可畫,JavaScript - canvas - 鏡像圖片
  • 圖片鏡像翻轉,UGUI優化:使用鏡像圖片
  • Codeforces,CodeForces 1253C
  • MySQL下載安裝,Mysql ERROR: 1253 解決方法
  • 勝利大逃亡英雄逃亡方案,HDU - 1253 勝利大逃亡 BFS
  • 大一c語言期末考試試題及答案匯總,電大計算機C語言1253,1253《C語言程序設計》電大期末精彩試題及其問題詳解
  • lu求解線性方程組,P1253 [yLOI2018] 扶蘇的問題 (線段樹)
  • c語言程序設計基礎題庫,1253號C語言程序設計試題,2016年1月試卷號1253C語言程序設計A.pdf
  • 信奧賽一本通官網,【信奧賽一本通】1253:抓住那頭牛(詳細代碼)
  • c語言程序設計1253,1253c語言程序設計a(2010年1月)
  • 勝利大逃亡英雄逃亡方案,BFS——1253 勝利大逃亡
  • 直流電壓測量模塊,IM1253B交直流電能計量模塊(艾銳達光電)
  • c語言程序設計第三版課后答案,【渝粵題庫】國家開放大學2021春1253C語言程序設計答案
  • 18轉換為二進制,1253. 將數字轉換為16進制
  • light-emitting diode,LightOJ-1253 Misere Nim
  • masterroyale魔改版,1253 Dungeon Master
  • codeformer官網中文版,codeforces.1253 B
  • c語言程序設計考研真題及答案,2020C語言程序設計1253,1253計算機科學與技術專業C語言程序設計A科目2020年09月國家開 放大學(中央廣播電視大學)
  • c語言程序設計基礎題庫,1253本科2016c語言程序設計試題,1253電大《C語言程序設計A》試題和答案200901
  • 肇事逃逸車輛無法聯系到車主怎么辦,1253尋找肇事司機