JavaScript基础回顾知识点记录2
js 使用嵌套for循环输出三角形

for(var i=0; i<5; i++){
//正三角
// for(var j=0; j<i+1; j++){
// document.write("* ");
// }
// 倒三角
for(var j=0; j<5-i; j++){
document.write("* ");
}
document.write("<br />");
}
js 中 break和continue只能在switch或循环语句中使用
break: 默认会立即终止离它最近的那个循环语句。 后可以跟一个lable 表示指定终止某个for循环
lable:循环语句 ( 给该循环语句命名)
continue: 默认只对最近的循环语句跳出当前循环次数。 后可以跟一个lable 表示指定跳过某个for循环当前循环次数 eg:
outer:
for(var i = 0; i<5; i++) {
document.write("外层"+i);
for(var j = 0; j<5; j++) {
if(j=1){
break/continue outer;
}
document.write("内存"+j);
}
} 如果不在break/continue后加outer, 则默认终止/跳过内存for循环。
js 中 对象的基本操作
// 使用构造函数来创建对象
var obj = new Object();
或者
var obj = {name:"张三",age:18}; (创建的同时添加属性)
// 给对象添加属性 (属性值可以是任意数据类型)
obj.name = "张三";
obj['sex'] = "男"; //检查对象中是否含有某属性
console.log("age" in obj); // 有的话输出true 没有的话输出false
js 中 基本数据类型和引用数据类型的区别
基本数据类型eg:
var a = 1;
var b = a;
a++;
console.log("a="+a); //a = 2
console.log("b="+b); //b = 1 引用数据类型eg:
var a = new Object();
a.age = 18;
var b = a;
a.age = 19;
console.log(a.age); // 19
console.log(b.age); // 19 1、基本数据类型的值是存储在栈内存中,值与值之间独立存在,修改一个变量,其他变量不会改变
2、引用数据类型(对象)的值是存储在堆内存中,每创建一个新的对象,就会在堆内存中开辟出一个新的空间,而
变量保存的是对象的内存地址
js 中 函数的实参可以为任意数据类型。
js 中 立即执行函数(匿名函数),往往只执行一次
(function(){
alert('我是立即执行函数');
})();js 中 全局作用域下,创建的变量和函数都会作为window对象的属性和方法保存。
<script type="text/javascript">
var a = 1;
console.log(a); //1
console.log(window.a); //1
function b() {
console.log(2);
}
window.b(); //2
b(); //2
</script>
js 中 使用var声明的变量会在所有代码执行前声明。function 函数名(){} 会在所有代码执行前创建函数。
js 中 碰到大量定义有相同属性的对象时,可以使用工厂方法创建对象(构造函数一般是首字母大写,可以理解为类,然后实例化)。
function Person(name,age) {
this.name = name;
this.age = age;
}
var obj2 = new Person("张三",18);
var obj3 = new Person("李四",20);
var obj4 = new Person("王五",24);
console.log(obj2,obj3,obj4); //输出:{"age":18,"name":"张三"} {"age":20,"name":"李四"} {"age":24,"name":"王五"} 检查obj2是否是Person类的一个实例
console.log(obj2 instanceof Person);js 中 原型对象
- 什么是原型对象:我们创建的每个函数,解析器都会向函数中添加一个属性prototype,该属性对应着一个原型对象。
- 如果作为普通函数调用,则没有用。如果是构造函数调用(即类的实例化),实例化的对象有一个隐含属性指向构造函数的原型对象。
- 原型对象相当于一个公共区域,所有同一个类的实例都可以访问。可以将共通内容放置到原型对象中
- 当访问一个属性或方法时,会现在对象自身中找,如果没有则去原型对象中找。
function Person(name,age) {
this.name = name;
this.age = age;
}
Person.prototype.a = 1;
Person.prototype.sayHello = function(){
console.log('hello');
}
obj4.a = 2;
var obj2 = new Person("张三",18);
var obj3 = new Person("李三",19);
var obj4 = new Person("王三",20);
console.log(obj2.a); //输出1
console.log(obj3.a); //输出1
console.log(obj4.a); //输出2
obj2.sayHello(); //hello
JavaScript基础回顾知识点记录2的更多相关文章
- JavaScript基础回顾知识点记录6-操作元素样式和事件对象(介绍基本使用)
js 中 操作元素样式 通过js修改元素内联样式(设置和读取的都是内联样式) 获取当前元素显示的样式 <html> <head> <meta charset=" ...
- JavaScript基础回顾知识点记录4-正则表达式篇(介绍基本使用)
js 中 正则表达式使用 创建正则对象和test方法使用 /* 创建正则表达式的对象 语法: var 变量 = new RegExp("正则表达式","匹配模式" ...
- JavaScript基础回顾知识点记录3
js 中 垃圾回收 //将不在使用的对象设置为null , js就会自动进行垃圾回收机制 var obj = {}; obj = null; js 中 数组基本介绍 数组也是一个对象 与普通对象功能类 ...
- JavaScript基础回顾知识点记录1
js执行顺序为从上往下执行 js中有6种数据类型 基本数据类型为: String Number Boolean Null Undefined 引用数据类型为: Object 使用typeof 查看对象 ...
- Javascript基础回顾 之(三) 面向对象
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(二) 作用域
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(一) 类型
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript 基础回顾——对象
JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...
- JavaScript基础回顾一(类型、值和变量)
请看代码并思考输出结果 var scope = 'global'; function f(){ console.log(scope); var scope = 'local'; console.log ...
随机推荐
- JS:undefined number
undefined数据类型:未定义属性 undefined 表示不含值 <script> var t1=""; var t2; if (t1===undefined) ...
- TypeScript(7)泛型
泛型 指在定义函数.接口或类的时候,不预先指定具体的类型,而在使用的时候再指定具体类型的一种特性. 引入 下面创建一个函数, 实现功能: 根据指定的数量 count 和数据 value , 创建一个包 ...
- python新建一个目录
源码部分 import os # 创建目录 def mkdir(path): isExists = os.path.exists(path) if not isExists: os.makedirs( ...
- SAP APO-主数据设置
可以在SAP APO的相关组件中创建主数据,也可以将其从SAP R / 3传输到SAP APO. 可以使用核心接口(CIF)将其传输到SAP APO模块. 在主数据集成模型中,您定义将主数据传输到SA ...
- Moriis神级遍历!
Moriis 遍历 Morris 遍历是二叉树遍历的一种方式,传统的递归和非递归遍历的时间复杂的都是O(N),空间复杂度都是O(h)(h为树的高度),而 Morris 遍历可以做到时间复杂的依然为 O ...
- Python音频处理基础知识,这不是轻轻松松~~~
大家好鸭,我是小熊猫 咱今天来讲一讲音频处理的基础知识上才艺~~~ 1.声音的基础 2.python读取.wav音频 欢迎加入白嫖Q群:660193417### import wave import ...
- Tapdata “设擂招贤”携手 LeetCode 举办全球极客技术竞赛
2021年11月28日 Tapdata 专场全球极客技术竞赛将在 LeetCode 平台开赛,面向程序员"设擂招贤",打擂成功的前50名挑战者将优先获得 Tapdata 高端技 ...
- JAVA中计算两个日期时间的差值竟然也有这么多门道
上半年春招的时候,作为面试官,对于面试表现的不错的同学会要求其写一小段代码看看.题目很简单: 给定一个日期,然后计算下距离今天相差的天数. 本以为这么个问题就是用来活跃面试氛围的,但是结果却让人大跌眼 ...
- 螣龙安科携手51CTO:网络安全实战课程最新发布
一年一度的双十一狂欢节即将来临了,相信各大电商平台也正摩拳擦掌跃跃欲试中.回顾2019年,阿里巴巴双十一狂欢节的单日交易额就达到了2684亿人民币,创造了电商交易历史上新的记录. 当人们愉快地购买着自 ...
- 题解 P2278 【[HNOI2003]操作系统】
一道大模拟 题面想必大家都很清楚了,一堆进程在抢占资源,除了先来后到的顺序以外,优先级大的还可以插队,空闲的时候未结束的进程会插进来占用空闲的时间. 那么,我们可以容易地想到,我们寻找这个最大的优先级 ...