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 ...
随机推荐
- python求最大公约数和最小公倍数
1 def gcd(x,y): 2 while(y): 3 t=x%y 4 x=y 5 y=t 6 #print("最小公倍数是:",x*y/x)#最小公倍数是两数之积除以最大公约 ...
- c++ 线段树
关于线段树 线段数是一种区间树 可以看出:叶子即为输入的数 假设一个节点为 x ,则其左儿子为 2x 右儿子为 2x+1 操作解析 约定 变量名 意义 input[] 输入的数 t[] 线段树 其中 ...
- 拥抱 OpenAPI 3:springdoc-openapi 食用指南
概述 使用 springdoc-openapi 可以快速为 springboot 项目生成规范的 API 文档,具体使用步骤如下: 依赖配置 在 pom.xml 加入内容,即可开始使用: <de ...
- Leetcode----<Diving Board LCCI>
题解如下: public class DivingBoardLCCI { /** * 暴力解法,遍历每一种可能性 时间复杂度:O(2*N) * @param shorter * @param long ...
- UiPath循环活动While的介绍和使用
一.While循环的介绍 先判断条件是否满足, 如果满足, 再执行循环体, 直到判断条件不满足,则跳出循环 二.While循环在UiPath中的使用 1. 打开设计器,在设计库中新建一个Flowcha ...
- Error Code: 1054. Unknown column '字段名' in 'field list'
问题描述: j博主在java开发过程中,通过读取excel中表名和字段名,动态创建insert的SQL语句,在mysql可视化工具中执行此SQL语句时,一直提示"Error Code: 10 ...
- 各种Git Bash乱码解决
乱码情景一: 当使用git log 出现乱码时,修改 %GIT_HOME%\etc\gitconfig 文件,加入如下内容: [gui] encoding = utf-8[i18n] commiten ...
- Schur不等式(舒尔不等式)
舒尔( Schur \texttt{Schur} Schur)不等式1 具体内容 Schur \texttt{Schur} Schur 不等式: x , y , z x,y,z x,y,z 为非负实数 ...
- Sentry的安装、配置、使用
前言 上一篇文章介绍了ExceptionLess这个日志收集系统:ExceptionLess的安装.配置.使用 由于ExceptionLess官方提供的客户端只有.Net/.NetCore平台和js的 ...
- VMware Workstation是可以跟hyper-v 共存的!
VMware Workstation是可以跟hyper-v 共存的! 神奇的事情 之前一直不知道这个事情,后来发现,原来是可以的,震惊了我的双眼. 我之前一直用的是桌面的Docker Desktop ...