string.png
这道题不难,但要看清题意;文字描述只说了字符串的长度比参数 num 长的情况,但没有说字符串长度比参数 num 短的情况,而下面示例中又列举了这种情况,所以,思考的时候还是要多看看下面的实例:
string2.png

第一种 :

  1. function truncate(str, num) {
  2. if(num < str.length){
  3. if(num <= 3){
  4. return str.slice(0,num) + "...";
  5. }else{
  6. return str.slice(0,num-3) + "...";
  7. }
  8. }
  9. return str;
  10. }
  11. truncate("A-tisket a-tasket A green and yellow basket", 11);

第二种 :

  1. function truncate(str, num) {
  2. if(num < str.length){
  3. return num > 3 ? str.slice(0,num-3)+"..." : str.slice(0,num) + "...";
  4. }
  5. return str;
  6. }
  7. truncate("A-tisket a-tasket A green and yellow basket", 11);

运用三元运算符代码更简洁。

版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。