1、打印99乘法表,且实现垂直居中(即等腰三角形)
<body>
<div>
九九乘法表
</div>
<script>
function out(n){
for(let i=1; i<=n; i++){
document.write("<div>");
for(let j=1; j<=i; j++){
document.write("<span>"+j+"*"+i+"="+(j*i)+"</span>"+"  ")
}
document.write("</div>"+"<br>");
}
document.write("<hr>")
}
out(9);
</script>
<style>
div{
display: flex;
justify-content: center;
align-items: center;
}
</style>
</body>
2、有效括号
var isValid = function(s) {
const stack=[];//建立一个栈
if(s.length<0) return false;
for(i=0;i<s.length;i++){
//如果是左括号则入栈
if(s[i]=='('||s[i]=='['||s[i]=='{'){
stack.push(s[i])
}else{
//否则,判断栈内是否有其他元素,没有则返回false
if(stack.length<1){
return false;
}//查询栈顶元素
let top=stack[stack.length-1];
//如果栈顶元素和当前元素匹配,则栈顶元素出栈,否则返回false
if((top=="("&&s[i]==")")||(top=="["&&s[i]=="]")||(top=="{"&&s[i]=="}")){
stack.pop();
}else{
return false;
}
}
}
//如果最后栈内元素为0,则恰好能够匹配
return stack.length==0;
};
3、f(n) => 1+2+3+...+n,即输入n,输出1加到n的和,条件是不能使用循环和不能使用数学的求和公式(不能用乘除)。
//递归实现
function dfs(n1,n2,n){
let sum=n1;
sum=sum+n2;
//注意返回
if(n2<n) return dfs(sum,n2+1,n)
else return sum;
}
document.write(dfs(1,2,100));
4、const arr=[x, y]; //x,y是数字或字符串。即将x和y的值互换,条件是不能开辟新的内存空间,即不能声明变量。
[x,y]=[y,x];
5、vue写一个小页面,点击click按钮实现输入框中的内容能够在下方显示出来
this.n=document.getElementById("...").value;
<template>
<div>
<input type="text" id="i">
<!-- 注意方法扩号 -->
<button @click="show()">显示内容</button>
<p>{{content}}</p>
</div>
</template>
<script>
export default {
name: '',
props: {
msg: String
},
data(){
return{
content:" "
}
},
methods:{
show(){
//注意.value获取内容,this指向内容,进行修改
this.content=document.getElementById("i").value;
}
}
}
</script>
6、给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。(利用正则表达式,前后交换,解构赋值)
let s='asdfaerf13dfv234vszv';
let s1=[...s];
let left=0,right=s1.length-1;
let reg=/[a-zA-Z]/;
while(left<right){
if(reg.test(s1[left])&®.test(s1[right])){
[s1[left],s1[right]]=[s1[right],s1[left]];
left++;
right--;
}else if(!reg.test(s1[left])){
left++;
}else{
right--;
}
}
document.write(s1.join(""));//vzsvvfdf13rea234fdsa
7、给一个数组,找出比某一特定值大的元素
let s=[1,4,5,3,34,53,54,5,53,87,23];
let s1=s.filter((item,index,s)=>
item>1
)
document.write(s1)