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

JS中自定义对象

JS中自定义对象

概念理解

JSON:JavaScript Object Natation,JavaScript对象的表现形式,指定义JS对象的一种方式,已经发展成一种轻量级的数据交换格式。json是js的原生内容,也就是说在js中处理json数据不需要任何特殊的API或者工具包便可取出json中的数据。

js中创建对象的方法

一、通过js内置对象(少用),例:
var person=new Object();//创建基础对象实例,然后为其添加属性
person.name="ming";
person.age=10;

JS内置对象有:

对象描述
Object基础对象
Array数组
Function函数构造器
String字符串对象
Math数学对象
Number数值对象
Boolean布尔对象
Date日期时间
Error异常对象
RegExp正则表达式对象
Arguments函数参数集合
二、自定义对象构造,例:
function Person(name,age){//自定义对象构造器,然后创建实例
this.name=name;
this.age=age;
}
var person=new Person("ming",10);

注意:定义对象构造器,可以使用 “this” 关键字构造,也可以使用原型prototype构造。

三、直接定义,例:
var obj = {name: "ming",age:10,sex:"男"
};

特别注意:下面这个方法可以动态的为JS对象添加、修改、删除 key/value 对。

//参数:prop = 属性,val = 值,jsonObj=json对象
function createJson(prop, val) {// 如果 val 被忽略if(typeof val === "undefined") {// 删除属性delete jsonObj[prop];}else {// 添加 或 修改jsonObj[prop] = val;}
}

注意事项

在JS中,为数组对象添加对象元素时,添加至数组的只是对象变量的地址,所以每次添加时需要重新声明对象变量,否则,会出现重复值。同理,在Java中也是这个原理,这里以Java为例。

错误例子:

	@org.junit.Testpublic void definedTestMethod(){ArrayList<City> list=new ArrayList<City>();City city=new City();for (int i = 0; i < 3; i++) {city.setCode(i+"");list.add(city);}for (City c : list) {System.out.println(c.getCode());}}

输出结果:
在这里插入图片描述

正确例子:

	@org.junit.Testpublic void definedTestMethod(){ArrayList<City> list=new ArrayList<City>();for (int i = 0; i < 3; i++) {City city=new City();city.setCode(i+"");list.add(city);}for (City c : list) {System.out.println(c.getCode());}}

输出结果:
在这里插入图片描述

注:如果添加的对象变量为String类型,则不会出现这种情况。


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

相关文章:

  • 自定义表值对象
  • 自定义对象的占用的空间
  • 要用自定义多边形选择对象
  • js声明对象
  • vba自定义对象
  • wincc自定义对象
  • 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尋找肇事司機