目录
不会优先级怎么办
优先级不清楚了可以用()强行改变优先级 从而遇见不清楚的就直接套()从而真正解脱了背顺序表的烦恼 只有三个优先级比()高 分别是:"[]"(对象属性命名) “.”(对象属性命名) “new”(创建一个新对象) 都是对象相关的
case
case比较是全等比较 即=== 且不加break 如果比较结果为true则会从当前case处开始执行代码 即后面的不管结果是什么都执行
<script type="text/javascript">
switch("1"){
case 1:
alert("狗");
break;
case "1":
alert("猫");
break;
case "2":
alert("hh");
break;
default:
alert("ss");
}
</script>
不加break 如果比较结果为true则会从当前case处开始执行代码 即后面的不管结果是什么都执行
可加break在第一次为true的地方退出此语句退出
网页中打印空格+for循环执行顺序
“ ”在html网页中输出一个空格
for执行顺序:
:for(1初始化表达式;2条件表达式;4更新表达式)
{
3语句;
}
对一个数开方
可以用Math.sqrt();方法 这个函数返回值为所求数的开方
<script type="text/javascript">
var a=Math.sqrt(16);
console.log("a="+a);
</script>
js中 六个数据类型 五个为基本数据类型 剩下的object被称为引用数据类型
因为五个基本数据类型都是单一的值,值和值之间没有任何联系,所创建的都是独立的,不能成为一个整体; 所以引入对象数据类型(object) 他属于一种复合的数据类型,在对象中可保持多个不同数据类型的属性
对象的分类
(1)内建对象
-由ES构建中定义的对象,在任何的ES的实现中都可以使用 如:Math String Number Boolean Function Object…
(2)宿主对象
由JS的运行环境提供的对象,目前来讲主要是由浏览器提供的对象 如:BOM DOM 像concole.log(); document.write();这种直接可以拿来使用由浏览器直接提供的叫做宿主对象。
(3)自定义对象
由开发人员自己创建的对象
检查对象中是否含有指定的属性
in 运算符 通过该运算符可检查一个对象中是否含有指定的属性 如果有则返回true 没有则返回false
语法 “属性名” in 对象
<script type="text/javascript">
var obj=new Object();
obj["123"]=789;
console.log("text" in obj);
//返回false
</script>
基本和引用数据类型
基本数据类型:
JS中的变量都是保存到栈内存中的,基本数据类型的值直接在栈内存中存储,值与值之间是独立存在的,修改一个变量不会影响其他的变量。如:
var a=123; var b=a; a++;此时 a变为124,但b值不变
引用数据类型(对象)
(变量也可以是对象)
JS中对象是保存在堆内的 当创建一个对象 var obj=new Object(); 会在堆里开辟一个空间,用来存放这个对象。
这个空间有一个地址名,变量obj这个名字此时在栈里面,它对应在栈内存放值的地方放的是堆里所开辟空间的地址名。当为对象添加属性值则是直接存放在堆里面。
若 var obj1=obj;则使创建的变量obj1也指向堆里的obj所开辟空间的地址名(对象的引用),所以修改他们一个对象的属性,另一个相对应的属性也会改变。两个对象比较实质就是比较他们在堆里面所开辟的空间的地址,地址一样,他们才一样,这里,obj1和obj指向同一个地址,所以他们是相等的,作比较console.log(obj1==obj);会返回true;
特殊情况:当给他们其中一个变量赋值为NULL则不会影响另一个变量 因为设置为NULL就表示 他的值变为NULL已经失去所开辟空间的地址 与其失去了联系 如obj1=null;此时 他值就为null,但 obj不变 还指向 所开辟的空间。
总结:基本数据类型直接在栈里面存贮,一个变量赋给另一个变量也只是把他当值赋给另一个,赋完值之后各自没有任何关联,但引用数据类型只是引用,各自的值都是引用对应堆空间的地址,一个变量赋给另一个也只是把地址赋给另一个,赋完后还是都指向同一个堆中的空间。所以一个对象变化也会影响到另一个对象。
disabled属性可以使选项或者输入框失去自己的能力
比如
这两项已经无法输入且无法点击
设置超链接文字居中
因为a
是内联元素,所以我们直接给a
设置text-align
为center
会没有用,因为a
本来就是内联元素,他的大小就取决于里面文字的大小,所以我们可以先给a
设置成块元素在设置text-align
为center
设置元素为块元素:
dispaly的相关知识请移步至:地址
设置用户登录输入框文字变化
即这里面框里我们输入字符然后框里文字消失
我们用placeholder
属性
语法:
<input type="text" placeholder="显示的信息">
设置框的边缘变成圆的
用css中块元素的border-radius属性,这个属性可以使框的边角变成圆的,我们可以分别设置边框的这个值,如下:
border-top-left-radius:值; 设置上左
border-top-right-radius:值; 设置上右
border-bottom-right-radius:值; 设置下右
border-bottom-left-radius:值; 设置下左
我们也可以直接border-radius:值;
直接设置所有的边框角。
这里的值一般可以为像素和em
,这里的值的作用是设置变圆角的程度
设置文字两边有横线
选择器{
display: flex;
flex-direction: row;
}
选择器:before,选择器:after {
content: "";
flex: 1 1;
border-bottom: 2px solid #000;
margin: auto;
}
如下图,右边为效果图:
注意我们这里的选择器必须选择的是同一个文字标签
这个是直接在这个盒模型两边各加了新标签,所以这个加横线的应该不仅仅可以用到文字标签中
网页标题(title)左边的图标设置
效果图:
用法:
类似于引入外部css样式一样,在head标签中写入以下标签,即可
<link rel="icon" href="图片位置(链接)"/>
图片最好用icon
后缀的(不是定性要求)