>  기사  >  웹 프론트엔드  >  JS 배열, 문자열 및 수학 함수

JS 배열, 문자열 및 수학 함수

jacklove
jacklove원래의
2018-05-21 11:55:551381검색

이 글에서는 js 배열, 문자열 및 함수에 대해 설명합니다.

배열 방식에서 push, pop, Shift, unshift, Join, Split 기능은 무엇인가요?

push: 배열 끝에 요소를 추가합니다. 구문은 array.push(추가할 요소)입니다. ;, 반환 값은 배열의 길이입니다.

pop: 배열의 마지막 요소를 삭제합니다. 구문은 array.pop()입니다. 반환 값은 삭제된 요소의 이름입니다.

shift: 첫 번째 요소를 삭제합니다. 배열의 구문은 array.shift()입니다. 반환 값은 삭제된 요소의 이름입니다.

unshift: 배열의 시작 부분에 요소를 추가하고 후속 요소를 뒤로 이동합니다. 구문은 array.unshift입니다. (추가할 요소);, 반환 값은 배열의 길이입니다.

join: 원래 배열을 수정하지 않고 배열을 문자열에 연결하고 구문은 array.join()이며 반환 값은 완성된 문자열

split: 원래 문자열을 수정하지 않고 문자열을 배열로 분리합니다. 구문은 string.split('separator' ; splice(new1.length,0,91) //new1.length는 마지막 숫자 이후를 나타냅니다. 배열, 0은 추가할 키워드, 91은 추가할 요소입니다. []

new1

[91, 3, 2, 1, 34, 5, 91] //배열 new1의 끝에 요소 91을 성공적으로 추가했습니다.

splice를 사용하여 pop 구현:

new1
[91, 3, 2, 1, 34, 5, 9, 91] //new1 배열의 new1 요소 .splice(new1.length-1,1) // new1.length는 배열의 마지막 숫자를 나타내며 1은 길이입니다. [91]

new1
[91, 3, 2, 1, 34, 5, 9] //성공 마지막 요소 삭제 91

연결 Shift 구현:

new1                                                                                                                                                                              배열 아래 첨자 인덱스 번호, 1은 삭제 횟수를 나타냅니다. [91]           ~ > 45] //new1의 요소 array new1.splice(0,0,91) //첫 번째 0은 배열 첨자 인덱스 번호, 두 번째 0은 추가할 키워드, 91은 추가할 요소 []

new1
[91, 3, 2, 1, 34, 5, 645] //배열의 첫 번째 위치에서 배열을 사용하여 요소 91

을 성공적으로 추가했습니다. 다음 문자열을 이어붙입니다.

var prod = {    name: '女装',    styles: ['短款', '冬季', '春装']
};function getTp(data){  var new1  = prod.name;  var new2  = prod.styles;  var arrey =[];
  arrey.push(&#39;<dl class="product">&#39;);
  arrey.push("<dt>"+new1+"</dt>");  for(var i =0;i<new2.length;i++){
  arrey.push("<dd>"+new2[i]+"</dd>")
  }
  arrey.push(&#39;</dl>&#39;);  console.log(arrey.join());  
}
getTp(prod)//<dl class="product">,<dt>女装</dt>,<dd>短款</dd>,<dd>冬季</dd>,<dd>春装</dd>,</dl>

다음 기능을 달성하기 위한 찾기 함수를 작성하세요.

var arr = [ "test" , 2 , 1.5 , false ]function find(arr,add){  for(var i = 0;i < arr.length; i++){    if(add==arr[i] && add !== 0){      return console.log(i)
    }
  }  console.log(-1)
}
find(arr, "test") // 0find(arr, 2) // 1find(arr, 0) // -1

Write 다음 함수를 구현하는 filterNumeric 함수
arr = ["a", 1,3,5, "b", 2];var arre = [];function filterNumeric(arr){  for(var i= 0; i< arr.length;i++){      if(typeof arr[i]===&#39;number&#39;){
      arre.push(arr[i])
      }
  }  console.log(arre);
}
filterNumeric(arr)  //[1, 3, 5, 2]

객체 obj에는 className 속성이 있고 내부 값은 공백으로 구분된 문자열입니다(html 요소의 class 속성과 유사). 다음을 포함하는 addClass 및 RemoveClass 함수를 작성하세요. 함수:

var obj = {  className: &#39;open menu&#39;};  var shu = obj.className.split(" ");     
function addClass(obj,nano){                
  for(var i = 0;i< shu.length; i++) {        
    if(shu[i] === nano) {              
      return console.log("因为"+nano+"已经存在,此操作无任何办法");
    }                             
  }
  shu.push(nano);                   
 //console.log(shu);
  obj.className = shu.join(" ");   console.log(obj);
} 
addClass(obj, &#39;new&#39;);          //Object {className: "open menu new"}addClass(obj, &#39;open&#39;);        //因为open已经存在,此操作无任何办法addClass(obj, &#39;me&#39;);           // Object {className: "open menu new me"}console.log(obj.className);    // open menu new mefunction removeClass(obj,habo){  //console.log(shu)
  for(var i = 0;i<shu.length;i++){    if(shu[i] === habo) {
      shu.splice(i,1);
    }
  }
  obj.className = shu.join(&#39; &#39;);  console.log(obj);
}
removeClass(obj,"open");        //Object {className: "menu new me"}removeClass(obj, &#39;blabla&#39;);    //Object {className: "menu new me"}

my-short-string 형식의 문자열을 myShortString

function camelize(lama){  var lala = lama.split("-");  //["list", "style", "image"]
  var a =[lala[0]];  for(var i =1; i<lala.length; i++) {    var num =lala[i][0].toUpperCase();        //"S",    "I"
    var b = lala[i].replace(lala[i][0],num)
    a.push(b)  
  }console.log(a.join(""))
}
camelize("background-color")   //"backgroundColor"camelize("list-style-image")    //"listStyleImage""

형식의 문자열로 변환하는 camelize 함수를 작성하세요. 다음 코드는 무엇을 출력하나요? 왜요?

arr = ["a", "b"];  
arr.push( function() { alert(console.log(&#39;hello hunger valley&#39;)) } );
arr[arr.length-1]()  //

출력된 내용은 'hello 기아 계곡' 함수 함수의 내용이고 팝업창은 과소화되어 표시됩니다. 두 번째 문단은 arr 배열의 뒷부분에 함수 전체를 직접 추가해 마지막 요소가 되도록 하고, 마지막 문장은 arr 배열의 마지막 요소에 호출을 실행한다는 뜻이므로 console.log는 실행 후 소멸되므로 인쇄된 결과는 'hello 기아 계곡'이고, 팝업 창의 결과는 미달입니다

배열의 숫자를 필터링하고 숫자가 아닌 항목을 삭제하는 filterNumericInPlace 함수를 작성하세요
arr = ["a", 1 , 3 , 4 , 5 , "b" , 2];function filterNumericInPlace(arr){ 
  for(var i= 0; 0< arr.length; i++) {    
    if( typeof arr[i] !== &#39;number&#39;){
      arr.splice(i,1)
    }       
  }  console.log(arr);  // [1,3,4,5,2]}
filterNumericInPlace(arr);

ageSort 함수를 작성하여 다음 함수를 구현하세요.

var john = { name: "John Smith", age: 23 };var mary = { name: "Mary Key", age: 18 };var bob = { name: "Bob-small", age: 6 };var people = [ john, mary, bob ];function ageSort(data){
  data.sort(function (a,b){    return a.age-b.age;
  })  console.log(data);
}
ageSort(people); // [ bob, mary, john ]

배열을 필터링하는 필터(arr, func) 함수를 작성하고 두 개의 매개변수를 허용합니다. 첫 번째 매개변수는 처리할 배열이고 두 번째 매개변수는 콜백 함수입니다(콜백 함수는 각 배열 요소를 순회하여 받아들이고,

function isNumeric (el){    return typeof el === &#39;number&#39;; 
}
arr = ["a",3,4,true, -1, 2, "b"];function filter(arr, func){  
  for(var i =0;i<arr.length;i++){    if(!func(arr[i])){
      arr.splice(i,1);
    }
  }  return arr;
}
arr = filter(arr, isNumeric) ;console.log(arr);
arr = filter(arr,function(val){ return val > 0});console.log(arr); 
[3, 4, -1, 2]
[3, 4, 2]

String

첫 글자가 대문자인 문자를 반환하는 ucFirst 함수를 작성하세요.

function ucFirst(daho){  var add= daho[0].toUpperCase();
  daho=daho.replace(daho[0],add)  console.log(daho);
}
ucFirst("hunger")"Hunger"

str의 길이가 다음과 같으면 truncate(str, maxlength) 함수를 작성하세요. maxlength보다 크면 str은 maxlength로 잘리고 추가됩니다... 예를 들어:

function truncate(str, maxlength){  if(str.length-1>maxlength){
    add = str.substr(0,maxlength);    console.log(add+"...");
  }else{    return console.log(str);
  }
}
truncate("hello, this is hunger valley,", 10)
truncate("hello world", 20)"hello, thi...""hello world"

수학 함수

함수를 작성하세요. min은 포함하지만 max는 제외하고 min부터 max까지 난수를 얻는 함수

var num1 = 3.456;function limit2(num){
  num=Math.round(num*100)/100;  console.log(num);
}
limit2(num1)
limit2(2.42)3.462.42

min과 max를 포함하여 min과 max 사이의 난수를 얻는 함수를 작성하세요

function habo(min,max){   console.log(Math.random()*(min-max)+max)
 }
 habo(5,15)

난수 배열을 얻는 함수를 작성하세요. 배열의 길이는 len이고 최소값은 min, 최대값은 max(포함)의 난수

function habo(min,max){
  add = Math.random()*(min-max)+max;  console.log(Math.round(add));  
 }
 habo(5,12)

이 글에서는 JS 배열, 문자열 및 수학 함수와 관련된 내용을 설명합니다. PHP 중국어 웹사이트를 주의 깊게 살펴보시기 바랍니다.

관련 권장 사항:

JS 시간 개체 및 재귀 문제 정보

CSS 스타일에 대한 기본 지식

JS 타이머 및 종료 문제에 대한 설명

위 내용은 JS 배열, 문자열 및 수학 함수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.