牛客网刷题笔记(前端-js、html、css)
关于js的说法
-
js是一种动态类型,弱类型,基于原型,直译脚本语言 js是一门单线程语言 浏览器端的js包含了DOM、BOM、ECMAScript对象 js语言不仅可以在浏览器环境允许,也可以在node提供的服务器端平台运行 在原型上扩展的可枚举方法,会被for in循环出来 For循环是按顺序的,for in循环不一定按顺序 大数据场景下,js中串联字符串较为高效的方法是Array.join()
js系统方法
-
isNaN:isNaN() 函数用于检查其参数是否是非数字值。 escape:escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。返回:已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。 eval:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。返回:通过计算 string 得到的值(如果有的话)
关于HTML5控件显示音频和视频媒体
-
js可与html5视频和音频结合起来使用增强其行为
form表单
-
enctype属性用来定义表单数据进行编码的方式,默认值为application/x-www-form-urlencoded 如果涉及上传文件action= multipart/form-data
this关键字
-
不改变this指向的前提下,this总是指向函数的直接调用者 new关键字创建的对象,this指向new出来的那个对象 IE中attachEvevt中的this总是指向全局对象Window
IFrame标签
-
相同域名下,内嵌的IFrame可以获取外层网页的对象;外层网页脚本可以获取IFrane网页内的对象 可以通过脚本改变IFrame的大小 通过IFrame,网页嵌入卡网页内容,并可以动态更改
函数定义
-
function foo(){} 普通函数声明 var foo = function () {} var foo = new Function() 构造函数
js只有函数作用域,没有块作用域
if (!a in window){
var a = 1;
}
alert(a);
弹出undefined 原因: js只有函数作用域,没有块作用域,变量声明变量提前,在if语句里面定义会提前,a已经定义,没有赋值,打印是undefined
同步和异步
在所有的同步任务执行完之前,异步任务是不会执行的。 许多循环加上计时器的例子,来定时改变某些东西,需要用闭包来完成。
其他(输出为多少)
-
( () => {} ) . length 获取方法形参的个数 1&2 按位与 0001 0010 = 0011 +[] 隐式类型转换,[] 是对象,转换为‘’ ,+‘’ === 0
css
css预编译工具 less、sass、stylus
css单位
-
vm、vh、em、rem都是相对单位
可以继承的父元素的属性
-
color(颜色,a元素除外) direction(方向) font(字体) font-family(字体系列) font-size(字体大小) font-style(用于设置斜体) font-variant(用于设置小型大写字母) font-weight(用于设置粗体) letter-spacing(字母间距) line-height(行高) text-align(用于设置对齐方式) text-indent(用于设置首航缩进) text-transform(用于修改大小写) visibility(可见性) white-space(用于指定如何处理空格) word-spacing(字间距)
HTML5新增标签
-
video article footer header
